Cross-screen optimization of advertising placement

ABSTRACT

The current invention relates to a computer-generated method for optimizing placement of advertising content across multiple different devices. The system can allocate advertising campaigns and plans to various inventory types based on the probability of accurate consumer matching. Consumer matching can be achieved by generation of look-alike models in a consumer&#39;s device graph to predict future consumption behavior. The system includes an interface through which an advertiser can access relevant information about inventory and success of a given placement.

CLAIM OF PRIORITY

This application claims the benefit of priority under 35 U.S.C. § 119(e)to U.S. provisional application Ser. Nos. 62/196,592, filed Jul. 24,2015, and 62/264,764, filed Dec. 8, 2015, both of which are incorporatedherein by reference in their entirety.

RELATED APPLICATIONS

This application is related to U.S. patent application Ser. No.15/219,259, filed Jul. 25, 2016, entitled “TARGETING TV ADVERTISINGSLOTS BASED ON CONSUMER ONLINE BEHAVIOR”, Ser. No. 15/219,268, filedJul. 25, 2016, entitled “CROSS-SCREEN MEASUREMENT ACCURACY INADVERTISING PERFORMANCE”, Ser. No. 15/219,264, filed Jul. 25, 2016,entitled “SEQUENTIAL DELIVERY OF ADVERTISING CONTENT ACROSS MEDIADEVICES”, and to provisional application Ser. No. 62/196,618, filed Jul.24, 2015, 62/196,637, filed Jul. 24, 2015, 62/196,898, filed Jul. 24,2015, 62/196,560, filed Jul. 24, 2015, 62/278,888, filed Jan. 14, 2016,62/290,387, filed Feb. 2, 2016, and 62/317,440, filed Apr. 2, 2016, allof which are incorporated herein by reference in their entirety.

TECHNICAL FIELD

The technology described herein generally relates to improving andmanaging a cross-screen advertising strategy for advertisers, and moreparticularly relates to a system for targeting advertising content toconsumers on TV and mobile devices.

BACKGROUND

Video advertisements are among the most advanced, complicated, andexpensive, forms of advertising content. Beyond the costs to producevideo content itself, the expense of delivering video content over thebroadcast and cable networks remains considerable, in part becausetelevision (TV) slots are premium advertising space in today's economy.Furthermore, TV is no longer a monolithic segment of the media market.Consumers can now spread their viewing of video content, particularlypremium content, across TV, DVR, and a menagerie of over-the-top andon-demand video services viewed across smart TVs, gaming consoles, andmobile devices, as well as traditional TVs.

In short, TV viewing is transforming to digitally distributed viewing,as audiences watch proportionately less live broadcasting and more in avideo on demand (VOD) or streaming video format.

Adding online consumption to the list of options available to any givenconsumer, only leads to greater complexity to the process ofcoordinating delivery of video adverts to a relevant segment of thepublic. This complexity means that the task of optimizing delivery ofadvertising content today far exceeds what has traditionally beennecessary, and what has previously been within the capability ofexperienced persons. The data needed to fully understand a givenconsumer is fragmented as each individual and household views more andmore media in a disparate fashion by accessing a network of devices.

Nevertheless, for many companies, the analytical work that goes intodeveloping an advertising strategy today still requires manualcontributions by human analysts. This is especially the case for lowvolume purchasers of advertising inventory. Advertising strategies arealso generally fixed, meaning approaches to advertising strategy areconditioned on certain assumptions that are inflexible and limited towhat manual processes are able to achieve. The current state ofadvertising strategy is analogous to where financial trading was beforethe creation of financial strategy tools such as E-Trade, whichfacilitates automated buying, and financial advisors such as Fidelityfor investment planning.

In today's advertising strategy, human analysts guide the selection ofadvertising inventory based on, for example, Excel data tables and otherstatic data management tools. This results in inefficient selection ofslots, and delays in responding to market trends. Consumers are notdisparate silos of preference based on the device they are using, butthe market for advertising treats them that way due to limitations inthe available technology tools, most of which are incapable of quicklyand accurately integrating disparate data sets. For example, today, TVconsumption data exists separately from set top box owner data and TVOEMs. It follows that advertising strategies for TV are plannedaccording to TV-specific criteria, and web and mobile advertising, whichinclude sub categories such as social media, are each plannedseparately. Across the advertising industry, there are separate entitiesplanning for different media platforms, such as set-top box, phone anddesktop. Across the different media there exists disparate data, datasystems, and data sources (vendors). Today, these device and mediacategories remain largely segmented when incorporated into advertisingcampaign strategies and planning.

Currently, some companies attempt to link together a set of devicesrelated to a particular consumer, but they are not capable of treatingthe disparate data sources with any reliable level of data integration,or at a scale that is useful to advertisers. Identifying selections ofdevices by comparing and modeling incomplete user data against that ofother similar users within the market segment is a partial solution tothis issue, but current methods are not able to create associations at alevel of granularity that is reliable or useful.

Today, probabilistic and deterministic methods are not widely utilizedto associate mobile and computer devices to a precise audience, orhousehold. One reason such methods are not more widely adopted isbecause of inefficient processing and pairing of data across differentdevices. For example, in order to predict consumer purchasing, viewing,and advertising interaction habits at a 1:1 level of an associationbetween a user and their respective device, it is insufficient to assumethat any single instance of device access is representative of thatuser's purchasing intent. This is due to modern day habits of mediaconsumption—users consume media on a large variety of devices as well asvia different media (such as Hulu, Netflix, or cable television). Assuch, a much more complex analysis that enables insight into theintersection of media consumption and a user's family of devices isnecessary.

Another reason probabilistic and deterministic methods are not morereadily available to gauge consumer purchasing habits is because accessto user device data is not easily achieved. For example, under consumerprivacy laws, it is unlawful to access a user's device without theirexplicit consent. Therefore, on a mass scale, it is often unknown whatcombination of devices a demographic of users use, and what media theyconsumed on their respective devices. This poses a large challenge foradvertisers when determining which advertising inventory to purchase andhow best to reach their target audience efficiently on a given categoryof device.

Today, the data systems that track consumer information for use inadvertising targeting lack the ability to broadly combine and integratetransmutable and non-transmutable categories (i.e., requiring theintegration of a plurality of membrane levels) of consumer data. Mostdata systems contain static, one-dimensional, homogeneousclassifications of consumers. For example, a 29 year old who bought acar two years ago will be a consumer data point that will not adjust orbe updated over time. While adjusting the age of this individualovertime time is simple, other transmutable characteristics such asdesire to get married, pregnancy, or other lifestyle changes are noteasy to assess or predict.

Accordingly, there is a need for a method of integrating and connectingdata on a given consumer that is acquired over time from multipledifferent devices, and to use that integrated data in making reliableplacement of advertising content across multiple devices.

The discussion of the background herein is included to explain thecontext of the technology. This is not to be taken as an admission thatany of the material referred to was published, known, or part of thecommon general knowledge as at the priority date of any of the claimsfound appended hereto.

Throughout the description and claims of the application the word“comprise” and variations thereof, such as “comprising” and “comprises”,is not intended to exclude other additives, components, integers orsteps.

SUMMARY

The instant disclosure addresses the processing of consumer andadvertising inventory in connection with optimizing placement ofadvertising content across display devices. In particular, thedisclosure comprises methods for doing the same, carried out by acomputer or network of computers. The disclosure further comprises acomputing apparatus for performing the methods, and computer readablemedia having instructions for the same. The apparatus and process of thepresent disclosure are particularly applicable to video content inonline and TV media.

In overview, the present method allows an advertiser to allocate mediastrategies to different inventory types based on a probability ofmatching to an audience category or type. In particular, the presenttechnology relates to systems and methods for optimizing advertisingcampaigns. The methods herein lend themselves to increasing return oninvestment of money spent on advertising by increasing efficiency andreducing costs associated with identifying an advertising strategy.

The systems can operate at high-frequency, such as running from 10,000to 100,000 queries of audience impressions per second. The queries canbe dynamic, and in real-time.

In an alternative embodiment, the system develops an advertisingstrategy designed around specified campaign (end-user) parameters. Thestrategy is directed to advertising occurring on video, display ads, andwithin mobile and desktop environments.

The method involves analyzing consumer, media and related data, from anunlimited number of data inputs, including but not limited to:behavioral such as specific viewing and purchasing histories ofindividual consumers, as well as demographic, and location-relatedsources.

The present technology includes programmatic generation of look-alikemodels in a consumer's device graph to predict future consumptionbehavior. The method integrates actual content consumption behavior withbroadcasted user segments, as well as assigning the devices used forconsumption to a single consumer.

The present disclosure provides for a method for targeting delivery ofadvertising content to a consumer across two or more display devices,comprising: receiving a pricepoint and one or more campaign descriptionsfrom an advertiser, wherein each of the campaign descriptions comprisesa schedule for delivery of an item of advertising content across two ormore devices accessed by a consumer, wherein the devices include one ormore TV's and one or more mobile devices, and a target audience, whereinthe target audience is defined by one or more demographic factors;defining a pool of consumers based on a graph of consumer properties,wherein the graph contains information about the two or more TV andmobile devices used by each consumer, demographic and online behavioraldata on each consumer and similarities between pairs of consumers, andwherein the pool of consumers comprises consumers having at least athreshold similarity to a member of the target audience; receiving alist of inventory from one or more content providers, wherein the listof inventory comprises one or more slots for TV and online; identifyingone or more advertising targets, wherein each of the one or moreadvertising targets comprises a sequence of slots consistent with one ormore of the campaign descriptions, and an overall cost consistent withthe pricepoint; allocating the advertising content of the one or morecampaign descriptions to the one or more advertising targets; purchasingtwo or more slots of advertising inventory wherein one or more slots aredelivered within TV content identified as likely to be viewed by thepool of consumers, and one or more slots are delivered online as aresult of a real-time decision; instructing a first media conduit todeliver the item of advertising content to a consumer in the pool ofconsumers on a first device; and instructing a second media conduit todeliver the item of advertising content to the consumer on a seconddevice.

The present disclosure further includes a process for optimizing anadvertising campaign across a plurality of devices accessible to aconsumer, the method comprising: determining that the consumer is amember of a target audience; identifying a first and second deviceaccessible to the consumer, wherein the first and second device comprisea TV and a mobile device; receiving instructions for purchase of slotsfor a first and second item of advertising content on the first andsecond devices, consistent with an advertising budget and the targetaudience; bidding on slots for placement of the first and second itemsof advertising content, wherein the bidding relies on information aboutthe likely success of a bid based on at least the consumer's location,and the time of day; in the event of successful bids on the first andsecond items of content, causing a first media conduit to deliver thefirst item of advertising content to the first device; and causing asecond media conduit to deliver the second item of advertising contentto the second device; receiving feedback on the consumer's response tothe first and second items of content; and using the feedback toinstruct purchase of further slots for the first and second items ofadvertising content.

The present disclosure further provides for computer readable media,encoded with instructions for carrying out methods described herein andfor processing by one or more suitably configured computer processors.

The present disclosure additionally includes a computing apparatusconfigured to execute instructions, such as stored on a computerreadable medium, for carrying out methods described herein.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 shows, diagrammatically, relationships between parties thatcontribute to delivery of advertising content, such as advertisers, anadvertising exchange, media conduits, and consumers.

FIG. 2 shows a consumer graph.

FIG. 3 shows a node in a graph.

FIGS. 4A and 4B show steps in creation of a consumer graph.

FIG. 5 shows relationships between various entities in the advertisingpurchase realm.

FIG. 6 shows a flow chart of a method herein.

FIG. 7 shows a flow-chart of a process as described herein;

FIGS. 8A, 8B, 8C and 8D show an exemplary computer interface for anembodiment;

FIG. 9 shows an apparatus for performing a process as described herein;and

Like reference symbols in the various drawings indicate like elements.

DETAILED DESCRIPTION

The instant technology is directed to a computer-implemented methodsthat combine actual content consumption behavior, segments of theconsumer population, and an assignment of the devices used for mediaconsumption. The methods provide for utility for advertisers, contentowners, brand managers, data platforms, buying platforms, marketresearch companies, wireless carriers, TV manufacturers, pay-TVoperators and the like.

Advertising Functions

Relationships between entities in the business of purchase, delivery andconsumption of advertising content are depicted in FIG. 1. As can beseen, the advertising ecosystem is complex, involves many differententities, and many different relationships.

An advertiser 101 is a purchaser of advertising inventory 109. Anadvertiser may be a corporation that exercises direct control over itsadvertising functions, or it may be an agency that manages advertisingrequirements of one or more clients, usually corporate entities. Theadvertiser intends to make advertising content 103 (also an“advertisement” herein) available to one or more, typically a populationof, consumers 105, on one or more devices 107 per consumer.

Devices include, for a given consumer, one or more of: TV's (includingSmartTV's), mobile devices (cell phones, smartphones, media players,tablets, notebook computers, laptop computers, and wearables), desktopcomputers, networked photo frames, set top boxes, gaming consoles,streaming devices, and devices considered to function within the“Internet of Things” such as domestic appliances (fridges, etc.), andother networked in-home monitoring devices such as thermostats and alarmsystems.

The advertising content 103 has typically been created by the advertiser101 or a third party with whom the advertiser has contracted, andnormally includes video, audio, and/or still images that seek to promotesales or consumer awareness of a particular product or service.Advertising content 103 is typically delivered to consumers via one ormore intermediary parties, as further described herein.

Advertising content is typically of two different types: branding, anddirect-response marketing. The timeframe is different for these twotypes. Branding promotes awareness; direct response marketing isdesigned to generate an immediate response. For example, an automobilemanufacturer may put out direct response marketing material into themarket place, and wants to measure responses by who went to a dealershipor website after seeing an advertisement. The methods herein can beapplied to both types of advertising content, but the measurement ofeffectiveness is different for the two types: for example, effectivenessof branding is measured by GRP's (further described elsewhere herein),and results of direct response marketing can be measured by, forexample, website visits.

When delivered to a mobile device such as a phone or a tablet,advertising content 103 may additionally or alternatively take the formof a text/SMS message, an e-mail, or a notification such as an alert, abanner, or a badge. When delivered to a desktop computer or a laptopcomputer or a tablet, the advertising content 103 may display as apop-up within an app or a browser window, or may be a video designed tobe played while other requested video content is downloading orbuffering.

Consumers 105 are viewers and potential viewers of the advertisingcontent 103 and may have previously purchased the product or servicethat is being advertised, and may—advantageously to the advertiser—belearning of the product or service for the first time when they view theadvertising content 103.

Advertising inventory 109 (also inventory or available inventory,herein) comprises available slots, or time slots 117, for advertisingacross the several media interfaces, or conduits 111, through whichconsumers access information and advertising content. Such mediainterfaces include TV, radio, social media (for example, onlinenetworks, such as LinkedIN, Twitter, Facebook), digital bill boards,mobile apps, and the like. Media conduits 111 may generate their owncontent 113, or may be broadcasting content from one or more othercontent providers or publishers 115. For example, a cable company is amedia conduit that delivers content from numerous TV channel producersand publishers of content. Media interfaces may also be referred to ascontent providers, generally, because they deliver media content 113 (TVprograms, movies, etc.) to consumers 105. One aspect of the technologyherein includes the ability to aggregate inventory 109 from more thanone type of media interface or content provider. Media conduits 111 alsodeliver advertising content 103 that has been purchased for delivery attime slots 117, to consumers 105 for viewing on various devices 107. Apublisher 115 is typically a content owner (e.g., BBC, ESPN).

A slot 117 is a time, typically expressed as a window of time (1 minute,2 minutes, etc.) at a particular time of day (noon, 4:30 pm, etc., or awindow such as 2-4 pm, or 9 pm-12 am), or during a specified broadcastsuch as a TV program, on a particular broadcast channel (such as a TVstation, or a social media feed). An available slot is a slot in theinventory that an advertiser may purchase for the purpose of deliveringadvertising content. Typically it is available because anotheradvertiser has not yet purchased it. As further described herein, a slotmay additionally be defined by certain constraints such as whether aparticular type of advertising content 103 can be delivered in aparticular slot. For example, a sports equipment manufacturer may havepurchased a particular slot, defined by a particular time of day on aparticular channel, and may have also purchased the right to excludeother sports equipment manufacturers from purchasing slots on the samechannel within a certain boundary—in time—of the first manufacturer'sslot. In this context, a “hard constraint” is a legal or otherwisemandatory limitation on placing advertising in particular time slots orwithin specified media. A “soft constraint” refers to desired(non-mandatory) limitations on placing advertising in particular timeslots within specified media. “Constraint satisfaction” refers to theprocess of finding a solution to a set of constraints that imposeconditions that the variables must satisfy. The solution therefore is aset of values for the variables that satisfies all constraints.

Information is intended to mean, broadly, any content that a consumercan view, read, listen to, or any combination of the same, and which ismade available on a screen such as a TV screen, computer screen, ordisplay of a mobile device such as a tablet, smart-phone, orlaptop/notebook computer, a wearable such as a smart-watch, fitnessmonitor, or an in-car or in-plane display screen. Information isprovided by a media interface 111 such as a TV or radio station, amulti-channel video programming distributor (MVPD, such as a cable TVprovider, e.g., Comcast), or an online network such as Yahoo! orFacebook.

VOD refers to video on demand systems, which allow users to select andwatch or listen to video or audio content when they choose to, ratherthan having to watch content at a scheduled broadcast time. Internettechnology is often used to bring video on demand to televisions andpersonal computers. Television VOD systems can either stream contentthrough a set-top box, a computer or other device, allowing viewing inreal time, or download it to a device such as a computer, digital videorecorder (also called a personal video recorder) or portable mediaplayer for viewing at any time.

The communication between the advertisers and the media conduits can bemanaged by up to several entities, including: a demand-side provider(DSP) 123, an advertising exchange 119, and a supply-side provider 121.An advertising exchange 119 (also, exchange herein) is an environment inwhich advertisers can bid on available media inventory. The inventorymay be digital such as via online delivery over the Internet, or viadigital radio such as SiriusXM, or may be analog, such as via a TVchannel such as ESPN, CNN, Fox, or BBC, or an FM/AM radio broadcast. Anadvertising exchange 119 typically specializes in certain kinds ofcontent. For example, SpotX specializes in digital content, WideOrbitspecializes in programmatic TV.

Supply-side provider (SSP) 121 is an intermediary that takes inventory109 from a media conduit 111, and makes it available to a demand-sideprovider (DSP) 123, optionally via exchange 119, so that advertisers canpurchase or bid on the inventory when deciding how to positionadvertising content 103. SSP's have sometimes been categorized as publicor private depending on whether a media conduit is able to limit theidentity and number of advertisers who have access to the inventory. Insome situations, an SSP interacts directly with a DSP without the needfor an advertising exchange; this is true if the functions of anadvertising exchange that a purchaser of advertising content relies onare performed by one or both of the DSP and SSP. The technology hereinis particularly suited for being implemented and being carried out by asuitably-configured DSP.

In one configuration, an advertising exchange 119 interfaces between asupply side provider (SSP) 121 and a demand side provider (DSP) 123. Theinterfacing role comprises receiving inventory 109 from one or moreSSP's 121 and making it available to the DSP, then receiving bids 125 onthat inventory from the DSP and providing those bids 125 to the SSP.Thus, a DSP makes it possible for an advertiser to bid on inventoryprovided by a particular SSP such as SPotX, or WideOrbit. In someconfigurations, the DSP takes on most or all of the role of anadvertising exchange.

An advertising campaign (or campaign) is a plan, by an advertiser, todeliver advertising content to a particular population of consumers. Acampaign will typically include a selection of advertising content (suchas a particular advertisement or various forms of an advertisement, or asequence of related advertisements intended to be viewed in a particularorder), as well as a period of time for which the campaign is to run(such as 1 week, 1 month, 3 months). An advertiser typically transmits acampaign description 127 to an advertising exchange 119 or a DSP 121,and in return receives a list of the inventory 109 available. A campaigndescription 127 may comprise a single item of advertising content 103and one or more categories of device 107 to target, or may comprise aschedule for sequential delivery of two or more items of advertisingcontent 103 across one or more devices 107. A campaign description 127may also comprise a description of a target audience, wherein the targetaudience is defined by one or more demographic factors selected from,but not limited to: age range, gender, income, and location.

The DSP 123 then provides an interface by which the advertiser 101 canalign its campaign descriptions 127 against inventory 109 and purchase,or bid on, various slots 117 in the inventory. The DSP 123, or anexchange 119, may be able to provide more than one set of inventory thatmatches a given campaign description 127: each set of inventory thatmatches a given campaign description is referred to herein as anadvertising target 129. The advertiser 101 may select from among a listof advertising targets, the target or targets that it wishes topurchase. Once it has purchased a particular target, the SSP 121 isnotified and delivery instructions 137 are sent to the various mediaconduits 111 so that the advertising content 103 can be delivered in theapplicable time slots 117, or during selected content 113, to therelevant consumers.

A purchase of a given slot is not simply a straightforward sale at agiven price, but is achieved via a bidding process. The DSP will placebids on a number of slots, and for each one, will have identified a bidprice that is submitted to the SSP. For a winning bid, the SSP deliversthe advertising content to the media conduit, and ultimately theconsumer. Bids are generally higher for specific targeting than forblanket targeting.

The bidding process depends in part on the type of advertising content.TV content can be scheduled in advance, whereas for online content, thetypical bid structure is ‘just-in-time’ bidding: the advert is deliveredonly if a particular consumer is seen online. In general, the methodsherein are independent of bidding process, and are applicable to any ofthe bidding methods typically deployed, including real-time-bidding, aswell as bidding that exploits details of programmatic TV data.

By serving a tag with a given online ad, by using a protocol such asVPAID (https://en.wikipedia.org/wiki/Mixpo) or VAST (video advertserving template), the tag collects data including whether a consumerclicked on, or viewed, the content. The tag typically contains a numberof items of data relating to how a consumer interacted with theadvertising content. The items of data can be returned to the SSP and/orthe DSP in order to provide feedback on the circumstances of delivery ofthe advertisement. For example, the items of data can include a datumrelating to whether a user clicked on a video online. Certain items ofdata correspond to events that are referred to in the industry as“beacon” events because of their salience to an advertiser: for examplea beacon event can include the fact that a user stopped a video segmentbefore it completed.

The process of generating advertising targets may also depend one ormore campaign requirements. A campaign requirement, as used herein,refers to financial constraints such as a budget, and performancespecifications such as a number of consumers to target, set by anadvertiser or other purchaser of advertising inventory. Campaignrequirement information is used along with campaign descriptions whenpurchasing or bidding on inventory.

DSP's 123 also provide advertisers 101 with data on consumers anddevices, aggregated from various sources. This data helps an advertiserchoose from the inventory, those time slots and media conduits that willbest suit its goals.

Data used by DSP's may include census data 131, or data on specificconsumers and devices 133. Census data 131 includes data on a populationthat can be used to optimize purchase of inventory. Census data 131 cantherefore include demographic data such as age distribution, incomevariations, and marital status, among a population in a particularviewing region independent of what media interfaces the members of thepopulation actually view. Census data 131 can be aggregated from avariety of sources, such as state and county records, and U.S. CensusBureau data.

A data management platform (DMP) 135 can provide other types of thirdparty data 133 regarding consumers and the devices they use to the DSP.Typically a DMP provides a data warehousing facilities with embeddedfunctionality. DMPs download data and can perform a variety ofanalytical functions ranging from sorting, storing, processing, applyingmatching algorithms, and providing data outputs to purchasers andsubscribers. Examples of DMP's include: Krux, Exelate, Nielsen, Lotame.The consumer and device data 133 that is delivered to a DSP from a thirdparty provider may complement other consumer and device data 143 that isprovided by the media conduits. Data on consumers and the devices theyuse that is relevant to an advertiser includes matters of viewing habitsas well as specific behavioral data that can be retrieved directly froma media conduit. For example, as further discussed elsewhere herein,when a media conduit serves an advertisement to a consumer, the conduitcan collect information on that user's manner of access to the advert.Due to the volume of data involved, after a relatively short period oftime, such as 14 days, a media conduit may not be able to furnish anyinformation on a particular consumer. In that instance, the DSP can getdata on that user from a third party such as a DMP. Third parties canget data offline as well. As used herein, an offline event is one thathappens independently of the Internet or a TV view: for example, it caninclude purchase of an item from a store and other types oflocation-based events that an advertiser can view as significant. Datacan be shared between the entities herein (e.g., between a DMP and aDSP, and between DSP and SSP, and between media conduits and a SSP oradvertising exchange) using any commonly accepted file formats forsharing and transfer of data: these formats include, but are not limitedto: JSON, CSV, and Thrift, as well as any manner of text fileappropriately formatted.

An impression refers to any instance in which an advertisement reaches aconsumer. On a TV, it is assumed that if the TV is broadcasting theadvertisement then an individual known to be the owner of, or a regularviewer of, that TV will have been exposed to the advertisement, and thatdisplay counts as an impression. If multiple persons are in the samehousehold then the number of impressions may equal the number of personswho can view that TV. In the online environment, an impression occurs ifa consumer is viewing, say, a web-page and the advertisement isdisplayed on that web-page such as in the form of a pop-up, or if theuser has clicked on a link which causes the advertisement to run.

An audience segment is a list of consumers, de-identified from theirpersonally identifiable information using cookie syncing or othermethods, where the consumers belong to a type (income, gender,geographic location, etc.), or are associated with a behavior:purchases, TV viewership, site visits, etc.

Cookie syncing refers to a process that allows data exchange betweenDMP's SSP's and DSP's, and more generally between publishers of contentand advertisement buyers. A cookie is a file that a mobile device ordesktop computer uses to retain and restore information about aparticular user or device. The information in a cookie is typicallyprotected so that only an entity that created the cookie cansubsequently retrieve the information from it. Cookie syncing is a wayin which one entity can obtain information about a consumer from thecookie created by another entity, without necessarily obtaining theexact identify of the consumer. Thus, given information about aparticular consumer received from a media conduit, through cookiesyncing it is possible to add further information about that consumerfrom a DMP.

For mobile devices, there is a device ID, unique to a particular device.For TV's there is a hashed IP address. The device ID information may beused to link a group f devices to a particular consumer, as well as linka number of consumers, for example in a given household, to a particulardevice. A DSP may gather a store of data, built up over time, inconjunction with mobile device ID's and TV addresses that augment‘cookie’ data.

Cross-screen refers to distribution of media data, including advertisingcontent, across multiple devices of a given consumer, such as a TVscreen, computer screen, or display of a mobile device such as a tablet,smart-phone or laptop/notebook computer, a wearable such as asmart-watch or fitness monitor, or an in-car, or in-plane displayscreen, or a display on a networked domestic appliance such as arefrigerator.

Reach is the total number of different people exposed to anadvertisement, at least once, during a given period.

In a cross-screen advertising or media campaign, the same consumer canbe exposed to an advertisement multiple times, through different devices(such as TV, desktop or mobile) that the consumer uses. Deduplicatedreach is the number of different people exposed to an advertisementirrespective of the device. For example, if a particular consumer hasseen an advertisement on his/her TV, desktop and one or more mobiledevices, that consumer only contributes 1 to the reach.

The incremental reach is the additional deduplicated reach for acampaign, over and above the reach achieved before starting thecampaign, such as from a prior campaign. In one embodiment herein, atype of campaign can include a TV extension: in this circumstance, anadvertiser has already run a campaign on TV, but is reaching a point ofdiminished returns. The advertiser wants to find ways to modify thecampaign plan for a digital market, in order to increase the reach. Inthis way, a DSP may inherit a campaign that has already run its courseon one or more media conduits.

In addition to TV programming content, and online content delivered todesktop computers and mobile devices, advertisements may be deliveredwithin OTT content. OTT (which derives from the term “over the top”)refers to the delivery of audio, and video, over the Internet withoutthe involvement of a MVPD in the control or distribution of the content.Thus, OTT content is anything not tied to particular box or device. Forexample, Netflix, or HBO-Go, deliver OTT content because a consumerdoesn't need a specific device to view the content. By contrast, MVPDcontent such as delivered to a cable or set top box box is controlled bya cable or satellite provider such as Comcast, AT&T or DirecTV, and isnot described as OTT. OTT in particular refers to content that arrivesfrom a third party, such as Sling TV, YuppTV, Amazon Instant Video,Mobibase, Dramatize, Presto, DramaFever, Crackle, HBO, Hulu, myTV,Netflix, Now TV, Qello, RPI TV, Viewster, WhereverTV, Crunchyroll or WWENetwork, and is delivered to an end-user device, leaving the Internetservice provider (ISP) with only the role of transporting IP packets.

Furthermore, an OTT device is any device that is connected to theinternet and that can access a multitude of content. For example, Xbox,Roku, Tivo, Hulu (and other devices that can run on top of cable), adesktop computer, and a smart TV, are examples of OTT devices.

Gross rating point (GRP) refers to the size of an advertising campaignaccording to schedule and media conduits involved, and is given by thenumber of impressions per member of the target audience, expressed as apercentage (GRP can therefore be a number >100. For example, if anadvert reaches 30% of the population of L.A. 4 times, the GRP is 120.(The data may be measured by, e.g., a Nielsen panel of say 1,000 viewersin L.A.).

The target rating point (TRP) refers to the number of impressions pertarget audience member, based on a sample population. This numberrelates to individuals: e.g., within L.A. the advertiser wants to targetmales, 25 and older. If there are 100 such persons in the L.A. panel and70% saw the ad., then the TRP is 70% X number of views.

“Cross-Screen” refers to analysis of media, consumer, and device datathat combines viewer data across multiple devices.

“High frequency” refers to high frequency trading related to advertisingpurchases and sales. The methods and technology herein can be practicedby trading platforms for advertising that utilize computers to transacta large number of bid requests for advertising inventory at high speeds.

Consumer Data

Data about consumers can be categorized into two groups: there arenon-transmutable characteristics such as ethnicity, and gender; andthere are transmutable characteristics such as age, profession, address,marital status, income, taste and preferences. Various transmutablecharacteristics such as profession are subject to change at any time,while others such as age change at a consistence rate. Today, the datasystems that track consumer information for use in targeting advertisingcontent lack the ability to broadly track both categories of consumerdata. Most data systems contain static, homogenous classifications ofconsumers. For example, a 29-year old who bought a car two years agowill be a consumer data point that will not be updated or augmented withtime. Even if the age of the individual as stored in a system can beadjusted with time, other transmutable characteristics such as change inmarital state, or lifestyle changes, are not taken into account in thisconsumer's classification.

At various stages of the methods herein, it is described that eachconsumer in a population of consumers is treated in a particular way bythe method: for example, a computer may be programmed to analyze data oneach consumer in its database in order to ascertain which, if any, haveviewed a particular TV show, or visited a particular website;alternatively, some comparative analysis may be performed, in whichattributes of each user in one category of population is compared withattributes of each consumer in another category of population. Eachpopulation set may comprise many thousands of individuals, or manyhundreds of thousands, or even millions or many millions of individuals.It is assumed herein that the methods, when deployed on suitablecomputing resources, are capable of carrying out stated calculations andmanipulations on each and every member of the populations in question.However, it is also consistent with the methods herein that “eachconsumer” in a population may also mean most consumers in thepopulation, or all consumers in the population for whom the statedcalculation is feasible. For example, where one or more given consumersin a population is omitted from a particular calculation because thereis insufficient data on the individual, that does not mean that aninsufficient number of members of the population is analyzed in order toprovide a meaningful outcome of the calculation. Thus “each” whenreferencing a population of potentially millions of consumers does notnecessarily mean exactly every member of the population but may mean alarge and practically reasonable number of members of the population,which for the purposes of a given calculation is sufficient to produce aresult.

Consumer Graph

A consumer graph is a graph in which each node represents a consumer (orindividual user). The technology utilizes various implementations of aweighted graph representation in which relationships between consumers(nodes) are defined as degrees of similarity (edges). A consumer graphis used herein to categorize, store, and aggregate large amounts ofconsumer data, and allow an entity such as a DSP to make connectionsbetween data used to build a consumer graph with other data—such as TVviewing data—via data on given consumers' devices.

One way to construct the graph is by using deterministic relationshipdata; another is probabilistically using the attributes of each node. Insome instances, a combination of deterministic and probabilistic methodscan be used. In a deterministic, approach, which is relativelystraightforward, the basis is having exact data on a consumer, such aslogin information from a publisher. Thus, if a person has logged inmultiple times on different devices with the same ID, then it ispossible to be sure that the person's identity is matched. However, suchexact information may not always be available. By contrast, in aprobabilistic approach, it is necessary to draw inferences: for example,if the same device is seen in the same location, or similar behavior canbe attributed to a given device at different times, then it possible toconclude that the device belongs to the same user.

In some embodiments herein, machine learning methods, and Bayesian andregression algorithms, are used to explore commonalities betweenconsumers. Such methods are useful in situations where there is a finitenumber of parameters to be considered. In some other embodiments,techniques of deep learning are more useful in finding consumersimilarities and constructing a consumer graph. Machine learning is apreferred technique for matching exact pieces of information, forexample whether the same websites have been visited by two consumers,but deep learning can explore the details of a particular video or TVprogram—for example, by analyzing natural scene statistics—and therebyascertain, for example, whether two adverts that were viewed by a givenconsumer have something in common beyond their subject matter. Forexample, two adverts may include the same actor and be liked by aconsumer for that reason, even though the products portrayed have littlein common.

In preferred embodiments, the device graph herein is based onprobabilistic data. The probabilistic approach to graph constructionuses behavioral data such as viewership habits to match up users.

In some embodiments, an entity such as a DSP, can construct a devicegraph; in other embodiments it can obtain, such as purchase, it from aanother entity such as a DMP.

In various embodiments herein, both a device graph and a consumer graphare operating together in a manner that permits tying in mobile data toTV data.

The term graph is used herein in its mathematical sense, as a set G(N,E) of nodes (N) and edges (E) connecting pairs of nodes. Graph G is arepresentation of the relationships between the nodes: two nodes thatare connected by an edge are similar to one another according to somecriterion, and the weight of an edge defines the strength of thesimilarity. Pairs of nodes that do not meet the similarity criterion arenot joined by an edge. FIG. 2 illustrates graph concepts, showing 6nodes, N₁-N₆, in which three pairs of nodes are connected by edges.

In the implementation of a graph herein, a node, N, is an entity orobject with a collection of attributes, A. In FIG. 2, each node hasassociated with it an array of attributes, denoted Ai for node Ni.

In the implementation of a graph herein, an edge, E, existing betweentwo nodes indicates the existence of a relationship, or level ofsimilarity, between the two nodes that is above a defined threshold. Theweight of an edge, w_E, is the degree of similarity of the two nodes.The weights of the edges in FIG. 2 are shown diagrammatically asthicknesses (in which case, w_E₁₂>w_E₃₄>w_E₁₅).

In a consumer graph, a node represents an individual, or a householdcomprising two or more individuals, with a set of attributes such as thegender(s) and age(s) of the individual(s), history of TV programswatched, web-sites visited, etc.

FIG. 3 illustrates an exemplary structure of a node of a consumer graph.Each node has a collection of attributes that include types andbehaviors, for which data is continuously collected from first party andthird party sources. Many of the attributes are transmutable if newinformation for the consumer becomes available, and the collection ofattributes (i.e., the number of different attributes stored for a givenconsumer) can also grow over time as new data is collected about theconsumer. An aspect of the technology herein is that the graph isconstructed from a potentially unlimited number of inputs for a givenconsumer, such as online, offline, behavioral, and demographic data.Those inputs are updated over time and allow the data for a givenconsumer to be refined, as well as allow the population of consumers onwhich data can be used to be expanded. The fact that there is no limitto the type and character of data that can be employed means that themethods herein are superior to those employed by panel companies, whichrely on static datasets and fixed populations.

Some of the sources from which data is collected are as follows.

Type data is categorical data about a consumer that normally does notchange, i.e., is immutable. Behavioral data is continuously updatedbased on a consumer's recent activity.

Each node includes a grouping of one or more devices (desktop, mobile,tablets, smart TV). For each device, data on the type of the user basedon the device is collected from third party and first party sources.

Table 1 shows examples of data by category and source.

TABLE 1 1^(st) Party 3^(rd) Party Non-transmutable Census (Govt.)Household income Education level (e.g., from Exelate) Gender (e.g., fromNielsen, DAR) Transmutable Behavior (online) Offline behavior TV viewingRetail Purchases Viewability (e.g., Offsite visits how much of advert(visited pharmacy, seen, kept on, movie theater, visible online?) cardealership, etc.) Online sites visited Location events

First party data comprises data on a user's behavior, for example:purchases, viewership, site visits, etc., as well as types such asincome, gender, provided directly by a publisher to improve targetingand reporting on their own campaigns. (For example, the Coca Colacompany might provide to a DSP, a list of users who “like” Coke productson social media to improve their video advertising campaigns.) Firstparty type data can be collected from advertisements served directly tothe device, and from information collected from the device, such as oneor more IP addresses. First party type data includes location from IPaddress, geolocation from mobile devices, and whether the device islocated in a commercial or residential property.

Third party type data is obtained from external vendors. Through aone-on-one cookie synchronization or a device synchronization, anexternal vendor, for example a DMP such as Krux (http://www.krux.com/),Experian (which provides purchase behavior data), or Adobe, providesinformation about the cookie or device. Example data includes marketsegment occupied by the consumer, such as age range, gender, incomelevel, education level, political affiliation, and preferences such aswhich brands the consumer likes or follows on social media.Additionally, external vendors can provide type data based on recentpurchases attributed to the device. Third party data includesinformation such as gender and income because it is not collecteddirectly from external vendors. Third party data can be collectedwithout serving an advertisement. TV programs viewed and purchases arethird party data.

First Party data is typically generated by a DSP; for example, it isdata that the DSP can collect from serving an Ad or a Brand/Agency thatprovides the data. First party data includes data that depends on havingserved an Ad to have access to it.

Behavioral data can be collected from the devices through first partyand third party sources. Behaviors are first party data typically, andare mutable.

First party behavioral data is collected from advertisements serveddirectly to the device. This includes websites visited, and the TVprogram, or OTT, or video on demand (VOD) content viewed by the device.

Third party behavioral data is obtained from external vendors, typicallyDMP's such as Experian, Krux, Adobe, Nielsen and Comscore, andadvertising exchanges or networks, such as Brightroll, SpotX, FreeWheel,Hulu. Example data includes the history of TV programming viewed on thedevice in the last month, the history of websites visited by a personalcomputer or laptop, or mobile device, and history of location basedevents from mobile devices (for example, whether the device was at aStarbucks). In some instances, the same types of data can be obtainedfrom both first party and third party entities.

Edges between the nodes in the consumer graph signify that the consumershave a threshold similarity, or interact with each other. The edges canbe calculated deterministically, for example, if the nodes are inphysical proximity, or probabilistically based on similarity inattributes. Probabilistic methods utilized include, but are not limitedto: K-means clustering, and connected components analysis (which isbased on graph traversal methods involving constructing a path acrossthe graph, from one vertex to another. Since the attributes aretransmutable, the edges can also change, either in their weighting or bybeing created or abolished if the similarity score for a pair of nodesalters. Thus the graph is not static, and can change over time. In someembodiments, change is dynamic: similarity scores are continuallyrecalculated as nodes attributes for nodes are updated.

Typically, attributes and data are added dynamically (as they areobtained). The graph may be re-constructed weekly to take account of thenew attributes and data, thereby establishing new weightings for theedges, and identifying newly connected or reconnected devices. (Graphconstruction and reconstruction may be done in the cloud, i.e., bydistributing the calculations over many processors on a computernetwork, or on processors warehoused at a datacenter under the controlof the DSP.)

The similarity, S, between two nodes N_(—1), N_(—2), is calculatedaccording to a similarity metric, which is the inverse of a distancefunction, f(N_1, N_2):N_(—1), N_2→S, that defines the similarity of twonodes based on their attributes.

In a consumer graph, similarity represents the likeness of twoindividuals in terms of their demographic attributes and their viewingpreferences. Similarities can be calculated, attribute by attribute, andthen the individual similarity attributes weighted and combined togetherto produce an overall similarity score for a pair of nodes.

When the attributes of two nodes are represented by binary vectors,there are a number of metrics that can be used to define a similaritybetween a pair of nodes based on that attribute. Any one of thesemetrics is suitable for use with the technology herein. In someembodiments, for efficiency of storage, a binary vector can berepresented as a bit-string, or an array of bit-strings.

When working with a similarity metric that is the inverse of a distancefunction, f(N_i, N_j), a zero value of the distance function signifiesthat the types and behaviors of the two nodes are identical. Conversely,a large value of the distance function signifies that the two nodes aredissimilar. An example of a distance function is Euclidean distance,f(N_i,N_j)=∥A_i−A_j∥^2where A_i, and A_j are the sparse vectors representing the attributes ofnodes N_i and N_j, and the distance is computed as a sum of the squaresof the differences of in the values of corresponding components of eachvector.

Comparisons of binary vectors or bit-strings can be accomplishedaccording to one or more of several similarity metrics, of which themost popular is the Tanimoto coefficient. Other popular metrics include,but are not limited to: Cosine, Dice, Euclidean, Manhattan, city block,Euclidean, Hamming, and Tversky. Another distance metric that can beused is the LDA (latent Dirichlet allocation). Another way of defining adistance comparison is via a deep learning embedding, in which it ispossible to learn the best form of the distance metric instead of fixingit as, e.g., the cosine distance. An example approach is via manifoldlearning.

The cosine dot product is a preferred metric that can be used to definea similarity between the two nodes in a consumer graph. The cosinesimilarity, that is the dot product of A_i and A_j, is given by:f(N_i,N_j)=A_i·A_j

In this instance, the vectors are each normalized so that theirmagnitudes are 1.0. A value of 1.0 for the cosine similarity metricindicates two nodes that are identical. Conversely, the nearer to 0.0 isthe value of the cosine metric, the more dissimilar are the two nodes.The cosine metric can be converted into a distance-like quantity bysubtracting its value from 1.0:f′(N_i,N_j)=1−A_i·A_j

An example of a more complex distance function is a parameterizedKernel, such as a radial basis function.f(N_i,N_j)=exp(∥A_i−A_j∥^2/s^2),where s is a parameter.

In the more general case in which the bit-string is a vector thatcontains numbers other than 1 and 0 (for example it contains percentagesor non-normalized data), then one can calculate similarity based ondistance metrics between vectors of numbers. Other metrics, such as theMahalanobis distance, may then be applicable.

Typically, a similarity score, S, is a number between 0 and 100, thoughother normalization schemes could be used, such as a number between 0and 1.0, a number between 0 and 10, or a number between 0 and 1,000. Itis also possible that a scoring system could be un-normalized, andsimply be expressed as a number proportional to the calculatedsimilarity between two consumers.

In some embodiments, when calculating a similarity score, eachcontributing factor can be weighted by a coefficient that expresses therelative importance of the factor. For example, a person's gender can begiven a higher weighting than whether they watched a particular TV show.The weightings can be initially set by application of heuristics, andcan ultimately be derived from a statistical analysis of advertisingcampaign efficacy that is continually updated over time. Other methodsof deriving a weighting coefficient used to determine the contributionof a particular attribute to the similarity score include: regression,or feature selection such as least absolute shrinkage and selectionoperator (“LASSO”). Alternatively, it is possible to fit to “groundtruth data”, e.g., login data. In some embodiments, as the system triesdifferent combinations or features, which one leads to greaterprecision/recall can be deduced by using a “held out” test data set(where that feature is not used in construction of the graph).

Another way of deriving a similarity score for a feature is to analyzedata from a successive comparison of advertising campaigns to consumerfeedback using a method selected from: machine learning; neural networksand other multi-layer perceptrons; support vector machines; principalcomponents analysis; Bayesian classifiers; Fisher Discriminants; LinearDiscriminants; Maximum Likelihood Estimation; Least squares estimation;Logistic Regressions; Gaussian Mixture Models; Genetic Algorithms;Simulated Annealing; Decision Trees; Projective Likelihood; k-NearestNeighbor; Function Discriminant Analysis; Predictive Learning via RuleEnsembles; Natural Language Processing, State Machines; Rule Systems;Probabilistic Models; Expectation-Maximization; and Hidden and maximumentropy Markov models. Each of these methods can assess the relevance ofa given attribute of a consumer for purposes of suitability formeasuring effectiveness of an advertising campaign, and provide aquantitative weighting of each.

Representation

To properly assess an entire population of consumers, a large number ofnodes needs to be stored. Additionally, the collection of attributesthat represent a node's types and behaviors can be sizeable. Storing thecollection of the large number of attributes for the nodes ischallenging, since the number of nodes can be as many as hundreds ofmillions. Storing the data efficiently is also important since the graphcomputations can be done most quickly and efficiently if the node datais stored in memory.

In a preferred embodiment, attributes are represented by sparse vectors.In order to accomplish such a representation, the union of all possiblenode attributes for a given type is stored in a dictionary. Then thetype, or behavior, for each node is represented as a binary sparsevector, where 1 and 0 represent the presence and absence of anattribute, respectively. Since the number of possible attributes of agiven type is very large, most of the entries will be 0 for a givenconsumer. Thus it is only necessary to store the addresses of thoseattributes that are non zero, and each sparse vector can be storedefficiently, typically in less than 1/100^(th) of the space that wouldbe occupied by the full vector.

As an example, let the attributes encode the TV programs that a givenconsumer has viewed in the last month. The system enumerates allpossible TV shows in the dictionary, which can be up to 100,000different shows. For each node, whether the consumer watched the show inthe last month is indicated with a 1, and a 0 otherwise.

If the attributes indicate different income levels, multiple incomelevels are enumerated, and a 1 represents that the consumer belongs to aparticular income level (and all other entries are 0).

Thus for a consumer, i, having an annual income in the range$30,000-$60,000, and who has viewed “Top Gear” in the last month, thefollowing is established:TV_Dictionary={“Walking Dead”, “Game of Thrones”, . . . , “Top Gear”}TV_i=[0,0, . . . ,1]TV_i can be stored as simply [4]; only the 4^(th) element of the vectoris non-zero. Similarly, for income:Income_Dictionary={<$30,000, $30,000-$60,000, $60,000-$100,000,>$100,000}Income_i=[0,1,0,0]Income_i can be stored as simply [2], as only the second element of thevector is non-zero.

All the attributes of a node, i, can thus be efficiently representedwith sparse vectors. This requires 2 to 3 orders of magnitude lessmemory than a dense representation.

Graph Construction

FIGS. 4A and 4B illustrate a flow-chart for steps in construction of aconsumer graph.

Initially, the graph is a collection of devices, which are mapped toconsumers. Multiple data sources are used to group multiple devices(tablet, mobile, TV, etc.) to a single consumer. This typically utilizesagglomerative techniques. In order to attribute a single device (e.g., aSmart TV) to multiple consumers, a refinement technique is used.

With agglomerative methods, multiple devices can be grouped to a singleconsumer (or graph node). Some data sources used for this include, butare not limited to:

-   -   IP addresses: multiple devices belonging to same IP address        indicates a single consumer or a household.    -   Geolocation: multiple devices that are nearby, using latitude        and longitude, can be attributed to a single consumer.    -   Publisher logins: if the same consumer is logged in from        multiple devices, those devices can be associated with that        consumer.

During this process, the consumer's identity is masked, to obviateprivacy concerns. The result is a single consumer ID that linksparticular devices together.

Let P(d_i, d_j) be the probability that the two devices, d_i and d_j,belong to the same node (consumer, or household). From multiple datasetsobtained from different categories of device, it is possible toconstruct the probability:P(d_i,d_j)=w_IP×P(d_i,d_j|IP)×w_Geo×P(d_i,d_j|Geo)×w_Login×P(d_i,d_j|Login)/Zwhere “×” means “multiply”, where w_are weighting factors, P(d_i, d_j|Y)is a conditional probability (the probability of observing device i anddevice j belong to same user, if Y has the same value for both, and Z isa normalizing factor. Thus, Y may be an IP address. (The value of theconditional probability may be 0.80). Each data source gets a differentweighing factor: for example, login data can be weighted higher than IPaddresses. The weights can be fixed, or learned from an independentvalidation dataset.

Once multiple devices are grouped to a single node, the Types andBehaviors from the respective devices are aggregated to the singularnode's attributes. For example, attributes (and the corresponding sparsevectors) from mobile (such as location events), and desktop (recentpurchases) are aggregated. This provides more comprehensive informationfor a consumer, permitting more accurate and meaningful inferences for anode to be made.

Associating a device with a given consumer is possible due to the datathat is associated with those devices and known to various mediaconduits. For examples, a Smart-TV stores location information as wellas subscription information about the content broadcast by it. Thisinformation is shared with, and can be obtained from, other entitiessuch as a cable company. Similarly, a mobile device such as a tablet orsmartphone may be associated with the same (in-home) wifi network as theSmart-TV. Information about the location is therefore shared with, e.g.,the cell-phone carrier, as well as broadcasters of subscription contentto the mobile device. A key aspect of the graph methodology herein isthat it permits consumer information to be linked across differentdevice and media platforms that have typically been segregated from oneanother: in particular, the graph herein is able to link consumer datafrom online and offline purchasing and viewing sources with TV viewingdata.

With refinement methods, a single device (for example, a smart TV) canbe associated with multiple consumers (or graph nodes) who, for example,own mobile devices that are connected to the same wifi network as thesmart-TV.

Given a node, n, to which are assigned multiple devices, the variousattributes are clustered into smaller groups of devices, for example, aTV ID, connected to multiple devices from a common IP address. The TVviewership data is aggregated along with the attributes from all thedevices. A clustering algorithm, such as k-means clustering, can beapplied to group the devices into smaller clusters. The number ofclusters, k, can be set generally by the number of devices (by defaultk=# number of devices/4). Sometimes it is possible to only collectaggregate data at a household level. For example, there may be as manyas 20 devices in one household. But by using behavioral data, it can beascertained that the 20 devices have 4 major clusters, say with 5devices each, where the clusters correspond to different individualswithin the same household. Thus, although there are two categories ofdevice (shared and personal), it is still important to attributebehavioral data to users.

Once a shared device is attributed to multiple nodes, the data collectedfrom the device can be attributed to the nodes. For example, TV viewingdata from a Smart TV can be collected from the OEM. Through thisattribution, the TV viewing data can be added to the collection of anode's attributes. Ultimately, a Smart-TV can be attributed to differentpersons in the same household.

Lookalike Modeling by Learning Distance Functions

Given a graph, G(N, E), and a functional form that defines a similaritymetric, and a set of seed nodes, it is possible to generate a set of“lookalike” nodes that are similar to the seed nodes, where similarityis defined by a function that is fixed, or learned. This is useful whenidentifying new consumers who may be interested in the same or similarcontent as a group of consumers already known to an advertiser. Similarprinciples can be utilized when projecting likely viewing behavior ofconsumers from historical data on a population of consumers.

Seed nodes can be a set of nodes, e.g., household(s) or individual(s),from which to generate a set of lookalike nodes using a fixed, orlearned, similarity metric. For example, seed nodes can be defined as anaudience segment (such as list of users that saw a specific show forcertain). This is useful for determining, for each member of theaudience segment, a list of other audience members who might havesimilar viewing habits even if they did not watch exactly the same showas the seeds.

Given the set of seed nodes in a graph (and their attributes), theoutput of lookalike modeling is a set of nodes (that includes the seednodes) that are similar to the seed nodes based on the fixed or learnedsimilarity metric.

Several different vectors can be used in determining look-alike models:One is the vector of TV programs in total. This vector can be as long as40 k elements. Another vector is the list of consumers who saw aparticular program (e.g., The Simpsons). The vector of viewers for agiven TV program can be as long as 10 M elements, because it containsone element per consumer. Another vector would be a vector of web-sitesvisited (say 100 k elements long). Still another vector would be basedon online videos viewed (which can also be 100 k elements long).

In general, TV program comparison data accesses a 10 M user base. Onlinedata can identify a potentially much larger audience, such as 150 Mconsumers. It should be understood that TV data can be accumulatedacross a variety of TV consumption devices that include, but are notlimited to linear, time-shifted, traditional and programmatic.

The similarity between 2 distinct nodes can be calculated from theirattributes, represented by sparse vectors. Given a distance functionf(N_i, N_j), and a set of seed nodes, N_S, the pairwise distancesbetween each element of the seed nodes, n in N_S, and all other nodesother than the seed node, n′, are calculated. That is, all quantitiesf(n, n′) are calculated.

After calculating all pairwise similarities, only the nodes such thatf(n, n′)<T are selected. T is a threshold maximum distance below whichthe nodes are deemed to be similar. Alternatively, values of f(n, n′)(where n is not n′) are ranked in decreasing order, and the top t nodepairs are selected. In either case, T and t are parameters that arepreset (provided to the method), or learned from ground truth orvalidation data. The set of all nodes n′ that satisfy the criteriaabove, form the set of “lookalike nodes”.

Graph Inference

Given a graph G(N, E), it is also possible to infer likely attributes ofa node, n, based on the attributes of its neighbors in the graph. Thiscan be useful when incomplete information exists for a given consumerbut where enough exists from which inferences can be drawn. For example,TV viewership attributes may be missing for a node n (in general, thereis either positive information if a user did watch a show, or it isunknown whether they watched it), whereas those attributes are availablefor neighbor nodes n′, n″ in the graph. Nodes n, n′, and n″ contain allother attributes, such as income level and websites visited.

In another example, it can be useful to calculate the probability thatthe consumer associated with node n would watch the show “Walking Dead”,given that n′, n″ both also watch “Walking Dead”. If the similarity,given by the weight of the edges between n and n′, n″, are w′, w″=0.8and 0.9 respectively, and the likelihood of n watching the show based onhis/her own attributes is 0.9, then the probability is given by:

${P( {n\mspace{14mu}{watches}\mspace{14mu}{``{{Walking}\mspace{14mu}{Dead}}"}} )} = {{\lbrack {{0.8 \times 0.9} + {0.9 \times 0.9}} \rbrack/\lbrack {{0.8 \times 0.9} + {0.9 \times 0.9} + ( {1 - {0.8 \times 0.9}} ) + ( {1 - {0.9 \times 0.9}} )} \rbrack} = 0.765}$

Similar principles can be utilized when projecting likely viewingbehavior of consumers from historical data on a population of consumers.

Accuracy

The graph is continually refined as new data is received. In oneembodiment, a technique such as machine learning is used to improve thequality of graph over time. This may be done at periodic intervals, forexample at a weekly build stage. It is consistent with the methodsherein that the graph utilized is updated frequently as new consumerdata becomes available.

To determine the accuracy of the graph, the precision and recall can becompared against a validation dataset. The validation dataset istypically a (sub)graph where the device and node relationships are knownwith certainty. For example, the login information from an onlinenetwork such as eHarmony, indicates when the same user has logged intothe site from different desktops (office, laptop), and mobile devices(smartphone and tablet). All the devices that are frequently used tologin to the site are thus tied to the same consumer and thereby thatindividual's graph node. This information can be used to validatewhether the constructed graph ties those devices to the same node.

If D is the set of devices in the validation set, let Z(D) denote thegraph, consisting of a set of nodes, constructed from the set ofdevices, D. For different datasets, and different graph constructionmethods, it is possible to obtain different results for Z(D).

For the set Z(D), true positive (TP), false positive (FP), and falsenegative (FN) rates can all be calculated. True positives are all nodesin Z(D) that are also nodes in the validation set. False positives areall nodes in N(D) that do not belong to the set of nodes in thevalidation set. False negatives are all nodes that belong to thevalidation set, but do not belong to Z(D).

Precision, defined as TP/(TP+FP), is the fraction of retrieved devicesthat are correctly grouped as consumer nodes.

Recall, defined as TP/(TP+FN), is the fraction of the consumer nodesthat are correctly grouped.

Depending on the application at hand, there are different tradeoffsbetween precision and recall. In the case of constructing a consumergraph, it is preferable to obtain both high precision and high recallrates that can be used to compare different consumer graphs.

The validation dataset must not have been used in the construction ofthe graph itself because, by doing so, bias is introduced into theprecision and recall values.

Learning the Similarity Metric:

Another feature of the graph that can be adjusted as more data isintroduced is the underlying similarity metric. Typically, the metric isfixed for long periods of time, say 5-10 iterations of the graph, andthe metric is not reassessed at the same frequency as the accuracy.

In the case where the distance function is not fixed, it is possible tolearn the parameters of a particular distance function, or to choose thebest distance function from a family of such functions. In order tolearn the distance function or its parameters, the values of precisionand recall are compared against a validation set.

Suppose a goal is to predict the lookalike audience segment that arehigh income earners, based on the attributes of a seed set of known highincome earners. The similarity of the seed nodes to all other nodes inthe graph is calculated for different distance functions, or parametersof a particular distance function. The distance function uses theattributes of the nodes, such as online and TV viewership, to calculatethe similarities.

For example, if the distance function is the radial basis function withparameter, s:f(N_i,N_j)=exp(∥A_i−A_j∥^2/s^2),then the pairwise distances from the seed nodes to all other nodes, arecalculated for different values of s, using the same threshold distancevalue, T, to generate the set of lookalike nodes. For different valuesof s (the parameter that needs to be learned), the calculations producedifferent sets of lookalike nodes, denoted by N_S(s).

For the set N_S(s), it is possible to calculate true positive (TP),false positive (FP) and false negative (FN) rates. True positives areall nodes in N_S(s) that also belong to the target set in the validationset. In this example, all the nodes that are also high income earners(in ground truth set). False positives are all nodes in N_S(s) that donot belong to the target set (not high income earners). False positivesare all nodes in N_S(s) that do not belong to the target set (not highincome earners). False negatives are all nodes that belong to thevalidation set (are high income earners), but do not belong to N_S(s).

Based on the application, it is possible to require different tradeoffsbetween precision and recall. In the case of targeting an audience withan advertisement, a high recall rate is desired, since the cost ofexposure (an advertisement) is low, whereas the cost of missing a memberof a targeted audience is high.

In the example herein, the aim is to choose the value of s for whichboth the precision and recall rates are high from amongst possiblevalues of s. For other types of distance function, there may be otherparameters for which to try to maximize the precision and recall rates.

The accuracy of a lookalike model can only be defined for a targetaudience segment. For example, it is possible to predict whether alookalike segment also comprises high income earners, from a seed set ofhigh income earners using TV viewing and online behavior datasets.Predictions can be validated using a true set of income levels for thepredicted set of nodes. This gives the accuracy of the predictions.However, the accuracy of predictions for one segment are not meaningfulfor a new target segment, such as whether those same users are alsoluxury car drivers.

Calculating Deduplicated Reach

The consumer graph connects a node (consumer) to all the devices that heor she uses. Thus the graph enables deduplicating the total exposure toan advertisement, to individuals. For example, if user abc123 hasalready seen a particular advertisement on each of his TV, desktop andmobile device, the total deduplicated exposures will count as 1. Thisenables the calculation of the following metrics for direct measurement.

The deduplicated exposed audience is the number of users belonging tothe target audience segment in the consumer graph who were exposed tothe advertisement after deduplication. Then, the direct deduplicatedreach is:Deduplicated Reach=Deduplicated Exposed Audience/Total Audience

For sampled measurement, this enables the calculation of thededuplicated exposed sampled audience as the number of sampled users whobelong to the target audience segment who were exposed to theadvertisement after deduplication. Then, the sampled reach is:Deduplicated Sampled Reach=Deduplicated Exposed Sampled Audience/TotalSampled Audience

In the case of modeled measurement data, the ID of the user in theconsumer graph from whom the data was collected is not known. Hence, thereach data cannot be deduplicated on a one-to-one level.

Calculation of deduplicated reach can be useful in managing targeting,if an advertiser wants to impose a frequency cap on consumers (forexample, if the advertiser doesn't want to show the same advert to thesame user more than twice). Deduplicated reach also provides aconvenient metric by which to optimize the efficacy of an advertisingcampaign: for example, by calculating the deduplicated reach over time,as an advertising campaign is adjusted, improvements can continue to bemade by altering parameters of the campaign such as, for example,consumer demographic, or time and channel of broadcast of TV content.

Calculating Incremental Reach

On day t, let the deduplicated reach (direct or sampled) be x. Theincremental reach is the additional deduplicated reach after running thecampaign. In a cross-screen environment, this is a useful parameter tocalculate if an advertiser wants be able to assess whether they canextend a 30% reach via TV to say, a 35% reach by extending to mobileplatforms. One caveat is that in direct measurement of, e.g., TV data,the portion of the sample obtained for smart-TV's is only a subset ofthe overall data, due to the relatively small number of smart-TV'scurrently in the population at large.

In the case of modeled measurement data such as is obtained from a panelwhere the nature of the sample has to be inferred, the ID of the user inthe consumer graph from whom the data was collected is not known. Hence,it is not possible to tell if the same user has viewed the advertisementin the past. Therefore the incremental deduplicated reach cannot becalculated for modeled data because devices cannot be associated withparticular users. Since the incremental reach from the sampledmeasurement, without deduplication, can be calculated, as describedabove, the methods herein are superior to panel-based methods.

Programmatic-TV Bidding

A SSP (such as WideOrbit, Videa, Clypd) aggregates TV inventory from aplurality of local TV stations into a common marketplace. DSPs make bidsfor individual or multiple TV spots. Unlike RTB (real-time bidding,e.g., utilizing protocol RTB 2.0-2.4, see Internet Advertisers Bureau atwww.iab.com/guidelines/real-time-bidding-rtb-project/), which can beutilized by the technology herein and applies to digital inventory andis such that the response time to acknowledge a bid is typicallyfractions of a second (often milliseconds), the feedback time on a TVbid can be anywhere from a single day to several weeks. Analog TVbidding is slower than programmatic TV bidding because it is notreal-time and not susceptible to algorithmic implementations.

Additionally, for programmatic TV bidding, the feedback response can beone of accept, hold, or decline instead of just a win/loss response.This introduces additional complexity that current digital biddingsolutions are not equipped to handle. A bidding architecture and methodfor PTV bidding consistent with the methods and technology herein is asfollows.

In the PTV marketplace, illustrated in FIG. 5, one or more SSPs (SSP1,SSP2, etc.) such as WideOrbit, Videa or Clypd has a programmaticinterface to all the TV supply from TV stations TV1, TV2 TV9, andaggregates that supply. Demand side platforms, DSP1-DSP3, etc., such asentities that can perform the methods herein, have previously only usedreal-time bidder methods (RTB) to make bids on online inventory, andhave accepted that the bidding process on TV inventory takes longer.

According to the methods herein, the decision to bid on an item ofinventory, and the corresponding bid price, are based on expectedperformance of certain key performance indicators (KPIs). In the case ofPTV inventory buying, the two main categories of KPI are “audiencereach” and “direct response.” Other KPI's can be related to the costeffectiveness of a campaign: for example, the cost per consumer reached(knowing the total cost of advertisement placement) can be calculatedand optimized in order to continually refine the campaign. KPI's caninform relevant optimization metrics.

In the category, audience reach, KPIs relate to the exposure of theadvertisement to targeted audience populations, as measured by thereach, or deduplicated reach.

By contrast, direct response KPIs relate to immediate actions taken byconsumers exposed to an advertisement, such as: website visits(expressed as an average number of visits to the advertiser's website byusers after being exposed to the advert); online purchases (purchasesmade in online stores e.g., Amazon.com, by users exposed to theadvertisement); offline purchases (purchases made in physical stores,like a retail store or grocery store, by users exposed to theadvertisement); and location events (the average number of times theusers exposed to the advertisement visited a particular location afterwatching the advertisement).

Bidding on advertising slots based on programmatic TV data depends ontargets set by the advertiser such as a certain minimum GRP, and one ormore optimization metrics; the outcome is a choice of slots, and a bidprice.

Bids are made for a future TV spot (i.e., a slot in a program schedule),and bids can typically be placed as much as two weeks in advance of thatspot being aired. For special events such as sporting events whose dateis known well in advance, bids may be placed even further ahead of time.Multiple bids can be placed for the same spot on separate days as acontingency if the bid on a preferred day was unsuccessful. There areseveral parameters that define a spot, including: the program title(e.g., The Simpsons), daypart (a portion of a given day in which theprogram is broadcast, e.g., Primetime, late night, which might permitdifferentiation between screening of new content vs. re-runs), and thegeographical area in which the program is broadcast (e.g. New Yorkdesignated market area (DMA)).

There are two forms of uncertainty in the bidding and feedback process:whether a bid will be successful, and, if successful, what will be theperformance of the advertisement. This leads to two types of biddingapproaches: “exploration” and “exploitation”. A unique aspect of thistype of bidding is that there are tradeoffs between the two types ofapproach.

There are three possible outcomes of a bid: Win (success; the bid offerhas been accepted by seller); loss (failure; the bid offer was declinedby seller); and “hold” (the seller has accepted the bid as part of ablock or “rotation” of spots/inventory).

A “hold” is an intermediate outcome for an advertiser. For example, ifthe advertiser bid on 2 of the 8 offered spots between 9 and 12 pm, andthe seller commits to playing the ads in 2 of the 8 spots but withoutspecifying which of the particular spots, that is a “hold”.

Additional feedback can accompany a loss outcome, such as a possibilityof revising and resubmitting the bid but in general, more informativeinformation to the advertiser is gleaned from a hold.

This is a unique aspect of bidding on programmatic TV content. If a bidprice wins, that maybe because it was too high. By contrast, a holdmeans in practice that the spot is locked and pooled together with otherspots of a similar character. For example, there may be 10 slotsavailable, and an advertiser bids on two of them. The two spots forwhich a “hold” is returned will be cleared when the whole block clears.That gives an advertiser a better idea of what price they can bid and beconfident that they will not lose. For this reason, a hold outcome hasmore information (and thus a greater reduction in uncertainty) for anadvertiser than a win outcome, since the advertiser can infer theclearing price for an entire block of spots when the response is a hold.Thus in programmatic TV bidding, a good heuristic is to aim for a Holdoutcome, rather than a Win outcome, a factor that differentiates it fromthe digital RTB case.

In the bidding process, there is uncertainty over whether a bid pricefor a specific spot (a defined by program title, daypart, DMA, etc.)will lead to a win, loss, or hold. It is possible to construct aprobability distribution, H, of the outcome of a bid (win, loss or hold)for parameters (given by theta) at a given bid price (P):Π(Outcome=Win/Loss/Hold|Theta,P)

As a DSP obtains more sample data on outcomes at different bid pricesfor specific parameters, the less the uncertainty over the outcome. Theprobability distribution, Π, can be refined with Bayesian updating afterobserving each new data point.

The other form of uncertainty is how well the advert will perform in thegiven TV spot, as measured by audience reach or direct response KPIs.After the advertisement is served on a spot, by measuring the reach(such as GRPs) or direct response (like website visits), some aspect ofperformance can be quantified. Since the performance of a spot is notrepeatable, (it can vary with time), the uncertainty of the spot'sperformance can be denoted by, for example: Π(KPI=50 GRPs|Theta).

Bayesian updating can be used to depict the uncertainty, which declinesas more data points are observed.

When bidding on a TV spot, an advertiser wants to set a bid price sothat it can achieve a win or hold outcome, as well as to bid on specificspots at a specific price to achieve an expected performance (anaudience reach or direct response KPI). It is possible to identify aspot with low uncertainty on expected performance at a price that has ahigh probability of win/hold. This is the case for spots where a lot ofdata is available, and is the “exploit” scenario. Alternatively, it ispossible to pick a spot and a price where there is very little or nosampled data; by finding a spot that has a high performance and leads toa win or a hold at low bid prices, it is possible to greatly reduce theuncertainty of the unknown spot. This is the “explore” scenario.

The ability to base bids on a growing body of information aboutpreviously successful (and unsuccessful) bids allows the overall biddingprocess to me more efficient for a given advertiser. FIG. 6 illustratesthis. From a lot of samples, suppose it is known that an advertiser canobtain a certain level of GRP's at a particular bid price ($22 in thisexample) and at particular values of a set of other variables. That bidprice represents a location in multi-factor space, represented by thedark box in FIG. 6. In this example, for convenience of representation,there are three variables (shown on orthogonal axes as location,daypart, and program name), though in practice there may be more than 3.The gray boxes represent information (feedback values, or outcomeprobabilities) about less successful bids: if the advertiser can deviatefrom the optimal bid, the outcome will be close and the advertisementmay give rise to a similar type of performance. This knowledge leads toreduced uncertainty in the outcome of a bid, and is based on aniterative learning process. The darker the box in the grid, the morecertain the outcome. The values for the other boxes allow an advertiserto make inferences on the values of similar blocks of inventory, basedon having similar parameters, such as same daypart or same geographiclocation.

The objective of bidding is to maximize the performance metric (audiencereach, or direct response KPIs) at a given price, or to achieve a levelof performance for the lowest cost. Since the performance is uncertain,another spot for which data is not available could have performed betterat a lower cost. Thus in the long term, for the bidder, there is valuein data collection by exploring spots with high uncertainty. Thisprinciple is captured by an exploration bonus parameter, U. The generalform of the objective function is given by equation (1):Value[spot]=ExpectedValue[spot]+U*Reduction in Uncertainty[spot]  (1)

The expected value of the spot is obtained from the expected performanceby integrating over the uncertainty values. Thus, an exemplarydefinition of the expected value is given by equation (2):ExpectedValue[spot]=Σ_(θ) P(KPI=x|θ)σ(KPI|θ)  (2)

Here σ(KPI|θ) is the uncertainty over the value that KPI will equal xfor a given theta. The sum is taken over all values of theta.

The reduction in uncertainty of the spot can be given by criteria suchas the expected reduction in entropy, or value of information, orinformation gain, according to formulae standard in the art.

An exemplary definition of change in uncertainty is given by equation(3):ΔUncertainty[θ]=σ(KPI|θ)−Σ_(x)σ(KPI=x|θ)  (3)where the sum is taken over all discretized values of the KPI.Programmatic TV Bidding Method

An exemplary method of bidding on a Programmatic TV slot, can beexpressed as follows. First, an advertiser sets a target budget, B. Inthe following, let S denote the set of all available spots.

-   -   i. Enumerate all sets s in S.    -   ii. Compute the value of set s using Equation (1).    -   iii. Assign a bid price P(s) to each s, using a prior        distribution P(Outcome=Win/Loss/Hold|s, P(s)).

The prior distribution can be estimated from rate card data, such asones provided by a company such as SQAD (Tarrytown, N.Y.; internet atsqad.com). Certain data providers specialize in information for TVbuying: based on relationships with sources of TV inventory spots, theysupply price ranges for advertising slots.

-   -   iv. Enumerate all (non-repeating) combinations of s, and denote        each combination by θ.    -   v. Calculate a Score by summing over all values of s in θ.    -   vi. Score[θ]=Σ_(s) P(s) P(Outcome=Win/Hold|s, P(s)) P(KPI=x|s)    -   vii. Choose the θ with the highest score such that the expected        target budget Σ_(s) P(s) P(Outcome=Win/Hold|s, P(s))←B.

The spots to bid on are the ones in the combination θ, that maximize thevalue of the Score, and whose expected target budget is less than B.

The expected target budget is calculated by taking into account theprobability that the bid price P(s) will have an outcome of Win or Hold.Essentially, if the average probability of a Win or Hold outcome isexpected to be 0.10, then by bidding on spots with a total budget of 10Bthe advertiser expects to spend a budget of B.

PTV Bidding different from digital real-time bidding (RTB), which isutilized for online and other digital applications (for example, ashandled by other DSP's), in at least two ways.

In RTB, a bid request is broadcast by a supplier for an immediatelyavailable advertisement impression. Bidders respond with a maximum bidprice, based on the parameters of the bid request. There is typically ashort time window (less than 50 ms) to receive bids. Once all the bidsare accepted, the exchange conducts a second price auction. The winnergets notified, and all others receive a notification of loss. Theuncertainty for the advertiser is over the probability of obtaining awinning bid at a given price. A machine learning system may be used toconstruct a probability distribution of a win ratio vs. price to learnthe optimal bid price. Such a system can be effectively tailored tocross-screen bidding situations.

In Programmatic TV bidding, bids are accepted for upcoming spots, up to14 days in advance. Instead of a win/loss outcome, bidders receive oneof a win, loss or a hold result. With a Loss signal, additional feedbackcan be provided so that the bidder can revise and resubmit the bidoffer. A machine learning system constructs a probability distributionof win/hold, and loss rates for different bid prices, and parametersthat define a spot. The probability distribution to be learned is morecomplex (and has more dimensions) than the RTB case.

Modeling of User Device Habits

Solving the issue of disparate data tracking requirements involvesprocessing data inputs that may have sequencing tags that reflect thenature of each category of device or medium. On one embodiment, thetechnology herein addresses this issue by allocating data based on thenature of each device. For example, a first batch of consumer data islimited to data mapped from the specific devices that a specificconsumer uses, the sources being a plurality of third party APIs. Thisdevice data updates such aspects as when, where, how, how long, and thelevel of engagement by the consumer, on each particular device. The datais then integrated and processed separately from other consumer data.All device usage data is integrated to create a more preciseunderstanding of the access points and behavior of the consumer overtime.

In another example, a batch of consumer data is based on consumptiondata. Within the data stored for each device, exists the potential toinclude a further plurality of third party data concerning actual mediaconsumed. This data can be obtained from content providers, OEMs,publishers, other data aggregators, and measurement providers (such asNeilsen). This data provides information as to what content the consumerhas watched. By understanding what a consumer has watched, it ispossible to understand the consumer's taste and preferences, understandwhat TV shows they are watching, as well as when, where and on whatdevice they are watching them. There are various deterministic methods(for example, understanding which member of the family has logged intotheir Netflix account) to determine which individual in a household isviewing which content.

With such a structure, the system is capable of integrating andprocessing data within different categories as well as across differentcategories. One example of this is comparing a complete set of user datafor a given consumer to complete sets of data on other members of themarket segment. Each complete user dataset is cross-compared to everyother user dataset. The system then matches like behaviors, and is ableto determine granular differences which may affect advertisingperformance. Such determinations then also fine tune the predictivealgorithm on a consumer-by-consumer basis.

Setting Up an Advertising Campaign

An advertiser selects various campaign parameters and campaign goals.The advertiser can select particular parameters such as a demographic,and then values for a percentage of the overall population that meetsthe criteria of the campaign. For example, the advertiser can targetwomen located in California between the ages of 20 and 30 years old, andspecify a reach of 20% of that segment of the population. Anothercriterion could be the frequency by which the advertisement reaches aparticular demographic, such as “two impression for each age group”.Criteria can be narrowed to identify users who are known to be in themarket for a particular product, e.g., targeting women who have recentlysearched for a Nike® shoe.

Taken together, the advertiser-specified criteria can be ranked andweighted by importance. For example, women from San Francisco could beweighted more highly than women located in Sacramento; in which case,the system can allocate and budget impressions to those particularsubsets of the overall demographic with higher weights. Additionally,special classifications can be placed on viewers based on their productpurchase patterns and media consumption. Assumptions can be built intothe campaign parameters based on purchase history, such that individualswho have purchased luxury handbags are more inclined to respondfavorably to luxury handbag advertisements.

Next, the system makes it possible to run the various campaignparameters and goals against consumer data from first party databases,and received via third party API's.

The underlying consumer data inputs are integrated from a plurality ofsources, which include internally developed datasets produced via amachine learning process, as well as third party data sources. Forexample, third party API's representing consumer and viewer data can becombined with data that exists as a result of internally processed datastreaming from a series of processes that, for example, track viewerbehavior and can predict viewer outcomes. Purchasing suggestions areprovided, and comparisons can be derived based on the application ofrelevant, real-time metrics. The system can further assist in theexecution of deal bidding and buying.

In a preferred embodiment, bidding and buying of advertising inventoryis achieved at a much faster rate compared to existing methods due tothe integration of data from a number of different sources within onesystem. This improvement in speed also provides significantly betteraccuracy in predicting data models around media consumption and consumerbehavior. For example, the system is able to incorporate a range of datarelated to other buyers on the exchange, so that purchases are optimizedbased on considerations such as the distribution of inventory.

In a preferred embodiment, the system incorporates APIs from thirdparties who track relevant metrics such as consumer behavior andconsumer demographics (for example, age, race, location, and gender).Relevant metrics are analyzed against the buyer's campaign requirements,such as budget, desired audience, and number of impressions.

In order to analyze available advertising inventory, the system intakesreal-time inventory data via APIs from publishers and content providers.Data concerning inventory is aggregated across mediums, so thatinventory available for digital, mobile, TV, and OTT may be combined,thereby allowing advertisers to allocate their budget across a varietyof mediums, device categories and content channels.

Once the advertiser has assigned campaign parameters, and the system hasidentified the possible inventories, the system permits the advertiserto choose a strategy for optimizing the allocation of impressions. Thereare various advertising strategies available to the advertiser.

Exemplary factors for advertising strategies are as follows:

-   -   Pacing: a rate at which an advertiser runs their advertising;    -   Uniform pacing: allocated evenly based on budget and length of        campaign;    -   Accelerated buying: buying based on performance (e.g., the        system detects a whole population of car video watchers and        autonomously allocates based on that discovery)    -   Competitive pacing: if an advertiser's competitor is heavily        buying a particular slot, the advertiser can choose whether to        compete with them, or to allocate away from those slots (this is        applicable to any device medium)    -   Specified time-frame strategies: advertising is purchased based        on the time of day, and day of the week. End-user advertisers        can buy inventories across the entire day, e.g., run every six        hours, or limit the purchasers to only specified times during        the day.    -   Inventory strategy: advertising is purchased based on maximizing        performance of advertising dollars spent or meeting specified        campaign parameters and goals.    -   Pricing strategy: purchasing focuses on staying within a defined        budget. Budgets can be allocated by dollar amount according to        inventory, medium, and/or time-frame.    -   Medium strategy: system detects which medium performs best to        meet campaign goals.

Segmented media planning is the practice of deploying a number of mediastrategies to different inventory types. Existing strategies fold manyconsumers into high-level consumer classifications. The presenttechnology, however, is directed towards user-specific and devicespecific matching of inventory. In a preferred embodiment of the presentinvention, there is a one-to-one audience match to inventory. In otherwords, the advertiser can specify that a particular item of advertisingcontent, such as online content, is directed to a particular individual.Further, the one-to-one inventory to consumer match can be furtherdelineated to a particular user-device such as a TV or mobile handset.

In one example of this process, an advertiser will set their mediastrategy directed towards a demographic defined as middle-aged women.The system can then segment the population of middle-aged women intovarious sub-segments, such as women with children, and women withoutchildren. Next, the system can match an advertising strategy, such as auniform pacing strategy, to the individual level, say, a particularwoman with children that has searched for diapers in the past hour. Thesystem can then allocate the advertisement to a specific device of thewoman, such as her mobile phone so that the next time she opens up anapplication, such as YouTube, the advert will display.

Delivering and Optimizing Cross-Screen Advertising Content

The technology described herein permits an advertiser to targetadvertising content to a consumer across more than one media conduit,including both TV and online media. There are two types of environmentin which an advertiser can target a consumer. In a 1:1 environment, aDSP can just use the actual segment and/or a modeled out version of theactual segment, to make a real time decision to place the advert if theconsumer matches the targeting parameters. In an index approach, when itis not possible to target 1:1 and it is not possible to do dynamicadvert insertion or real time decisioning, the system instead looks atconcentration of viewers projected to access the slot (such as a TVprogram or VOD program) and then targets the slots that have the highestconcentration of the target consumers.

In a preferred embodiment, the advertiser has control over theallocation of the advertising content because the advertiser accessesthe system via a unified interface that presents information aboutinventory, manages bids on the inventory, and provides a list ofpotential advertising targets consistent with a campaign description andthe advertiser's budget. The system then communicates with, for example,supply-side providers to ensure that the desired slots are purchased,typically via a bidding process, and the advertising content isdelivered or caused to be delivered.

In one embodiment, the technology provides for an advertising campaignthat involves delivery of content across two or more media conduits,rather than delivery of a single advertisement to multiple consumers atdifferent times on, say, TV only. The system thereby permits delivery ofadvertising content to a given consumer, or a population of consumers,on more than one device. For example, a consumer may view a portion ofthe campaign on a TV, and may also see the campaign within a desktopbrowser session on their laptop or on their OTT device. In this context,the TV inventory can be purchased across a variety of TV consumptiondevices that include, but are not limited to linear, time-shifted,traditional and programmatic TV, according to bid methodology describedherein or familiar to those skilled in the art. In some instances, theadvertiser desires to cap the number of impressions that a givenconsumer receives; in other instances, the advertiser wants to extendthe campaign from one media to another based on metrics calculatedacross various media conduits. The method permits the advertiser totarget segments of a population more precisely than before, as well asachieve fine scale refinement of a campaign based on performanceindicators from more than one conduit.

There are two aspects of the technology that enable an advertiser tosuccessfully manage and refine and advertising campaign: the system isable to keep track of which devices a given consumer can access, as wellas on which devices the user has already been exposed to the advertisingcampaign; the system can also identify those consumers that are mostlikely to be interested in the campaign's content. Accuracy in targetingcan thus be achieved via predictions based on a mapping of consumerbehavior from aggregated cross-screen viewership data.

The analytics portion of the system is capable of accepting unlimiteddata inputs regarding consumer behavior across various media. The systemuses this data to optimize consumer classifications. A second part ofthe output is improved measurement and prediction of future consumerbehaviors based on the data on cross-screen behavior.

Analysis of cross-screen data is able to determine where and when aconsumer has viewed an advertisement, or a particular version of it, andthereby permits advertisers to schedule broadcast of an advertisingcampaign across multiple platforms. Advertisers can then schedule where,when, and how an advertisement is subsequently broadcast. They havecontrol over retargeting (whether they show the same advertising morethan once), or can choose to broadcast a multi-chapter advertisingstory.

One method for managing delivery of advertising content to a consumeracross two more display devices is illustrated in FIG. 7. A consumergraph is, or has been, constructed 710, or is continually underconstruction and revision, according to methods described elsewhereherein, and a pool of consumers is defined 730, based on the graph ofconsumer properties, wherein the graph contains information about thedevices used by each consumer and demographic data on each consumer, andwherein the pool of consumers contains consumers having at least athreshold similarity to a member of a target audience.

The system receives a list of advertising inventory 712 from one or moremedia conduits or content providers, wherein the list of inventorycomprises one or more slots for TV and online.

The system receives a pricepoint 702 one or more campaign descriptions705 from an advertiser, wherein each of the campaign descriptions 705comprises a schedule for delivery of or more items of advertisingcontent across two or more devices accessed by a consumer, and a targetaudience 720, wherein the target audience is defined by one or moredemographic factors selected from: age range, gender, and location.Pricepoint 702 represents an advertiser's budget for the advertisingcampaign. The budget can be allocated across multiple slots, and acrossmultiple media conduits, according to the inventory and goals for thecampaign. Goals may include the target audience desired to be reached,and the hoped for number of impressions.

Based on the pool of consumers, the campaign descriptions and availableinventory, the system can identify one or more advertising targets,wherein each of the one or more advertising targets comprises two ormore slots, consistent with a given pricepoint 702 associated with acampaign description 705. It is then possible to allocate theadvertising content of the one or more campaign descriptions to the oneor more advertising targets based on the inventory.

The foregoing steps may be carried out in orders other than as describedabove, or iteratively, sequentially, or simultaneously, in part. Thus,the system may receive the campaign descriptions and pricepoint(s), atthe same time as it receives advertising inventory, or beforehand, orafterwards. The consumer graph, additionally, may be continually beingupdated.

For a given consumer, a number of devices accessed by that consumer areidentified 740. This can be from constructing a device graph asdiscussed elsewhere herein. Those consumers for which more than onedevice has been associated, can be targeted by an advertising campaignherein.

Inputs to the system of the various categories of data (inventory,advertising campaigns, etc.) can be via various application programinterfaces (APIs), the development of which is within the capability ofone skilled in the art.

Then 770, for each slot in an advertising target, the system makes a bidon the slot consistent with the pricepoint; for two slots where a bid isa winning bid, the system then instructs a first content provider todeliver a first item of advertising content in a first slot to a pool ofconsumers on a first device, and for a second slot, can then instruct asecond content provider to deliver a second item of advertising contentin the second slot on a second device. It is preferable that at leastone of the first device and the second device is a TV.

It is to be understood that the instructing and delivery steps areoptional for a given entity performing the method, once the slots of TVand online inventory have been identified as consistent with theadvertising campaign.

The methods herein can also be used to optimize an advertising campaignacross a plurality of devices accessible to a consumer. Such methodsbuild upon methods of delivery described hereinabove and with respect toFIG. 7. Once it has been determined that a consumer is a member of atarget audience, and a first and second device accessible to theconsumer have been identified, an advertiser wants to purchase of slotsfor a first and second item of advertising content on the first andsecond devices, consistent with an advertising budget and the targetaudience, in a manner that improves upon prior campaigns.

In this instance, the system can receive feedback on a consumer'sresponse to the first and second items of advertising content, and basedon that information as well as similar information from other consumers,it is possible to use the feedback to instruct purchase of further slotsfor the first and second items of advertising content.

For example, the system can receive a first datum from a first tag thataccompanied the first item of advertising content to validate whether aparticular consumer viewed the first item of advertising content on thefirst device as well as a second datum from a second tag thataccompanied the second item of advertising content. A given datum ofcontent can be a beacon, such as communicated via a protocol such asVPAID or VAST.

In some embodiments, a datum can comprise a confirmation of whether theconsumer has seen the first item of advertising content, in which casethe second item of advertising content is not delivered to the consumeruntil the consumer has seen the first item of advertising content.

In some embodiments, the advertising campaign can be optimized in anumber of different ways. Although measurements of deduplicated reach,as described elsewhere herein, can be used to assess—and refine—theeffectiveness of an advertising campaign, another factor is the overallcost effectiveness of the campaign. For example, given a budget, or adollar-amount spent per advertisement, the cost per impression can becalculated. This number can be optimized over successive iterations ofthe campaign.

In other embodiments, an advertising campaign is updated and optimizedduring its own term. For example, a campaign may be scheduled to runover a particular time period, such as 3 days, 1 week, 2 weeks, 1 month,or 3 months. The system herein can provide feedback on the efficacy ofthe campaign before it is complete, and can therefore provide anadvertiser with an ability and opportunity to adjust parameters of thecampaign in order to improve its reach. Such parameters include, but arenot limited to, aspects of audience demographic such as age, income,location, and media on which the advertisement is delivered, such as TVstation, or time of day.

The system and methods herein can still further provide an advertiserwith a way to project viewer data accumulated historically on to futurepotential viewing habits, for example, using look-alike modelling. Thehistorical data can include data acquired during the course of thecampaign.

Computational Implementation

The computer functions for manipulations of advertising campaign data,advertising inventory, and consumer and device graphs, inrepresentations such as bit-strings, can be developed by a programmer ora team of programmers skilled in the art. The functions can beimplemented in a number and variety of programming languages, including,in some cases mixed implementations. For example, the functions as wellas scripting functions can be programmed in functional programminglanguages such as: Scala, Golang, and R. Other programming languages maybe used for portions of the implementation, such as Prolog, Pascal, C,C++, Java, Python, VisualBasic, Perl, .Net languages such as C#, andother equivalent languages not listed herein. The capability of thetechnology is not limited by or dependent on the underlying programminglanguage used for implementation or control of access to the basicfunctions. Alternatively, the functionality could be implemented fromhigher level functions such as tool-kits that rely on previouslydeveloped functions for manipulating mathematical expressions such asbit-strings and sparse vectors.

The technology herein can be developed to run with any of the well-knowncomputer operating systems in use today, as well as others, not listedherein. Those operating systems include, but are not limited to: Windows(including variants such as Windows XP, Windows95, Windows2000, WindowsVista, Windows 7, and Windows 8, Windows Mobile, and Windows 10, andintermediate updates thereof, available from Microsoft Corporation);Apple iOS (including variants such as iOS3, iOS4, and iOS5, iOS6, iOS7,iOS8, and iOS9, and intervening updates to the same); Apple Macoperating systems such as OS9, OS 10.x (including variants known as“Leopard”, “Snow Leopard”, “Mountain Lion”, and “Lion”; the UNIXoperating system (e.g., Berkeley Standard version); and the Linuxoperating system (e.g., available from numerous distributors of free or“open source” software).

To the extent that a given implementation relies on other softwarecomponents, already implemented, such as functions for manipulatingsparse vectors, and functions for calculating similarity metrics ofvectors, those functions can be assumed to be accessible to a programmerof skill in the art.

Furthermore, it is to be understood that the executable instructionsthat cause a suitably-programmed computer to execute the methodsdescribed herein, can be stored and delivered in any suitablecomputer-readable format. This can include, but is not limited to, aportable readable drive, such as a large capacity “hard-drive”, or a“pen-drive”, such as connects to a computer's USB port, an internaldrive to a computer, and a CD-Rom or an optical disk. It is further tobe understood that while the executable instructions can be stored on aportable computer-readable medium and delivered in such tangible form toa purchaser or user, the executable instructions can also be downloadedfrom a remote location to the user's computer, such as via an Internetconnection which itself may rely in part on a wireless technology suchas WiFi. Such an aspect of the technology does not imply that theexecutable instructions take the form of a signal or other non-tangibleembodiment. The executable instructions may also be executed as part ofa “virtual machine” implementation.

The technology herein is not limited to a particular web browser versionor type; it can be envisaged that the technology can be practiced withone or more of: Safari, Internet Explorer, Edge, FireFox, Chrome, orOpera, and any version thereof.

Computing Apparatus

An exemplary general-purpose computing apparatus 900 suitable forpracticing the methods described herein is depicted schematically inFIG. 9.

The computer system 900 comprises at least one data processing unit(CPU) 922, a memory 938, which will typically include both high speedrandom access memory as well as non-volatile memory (such as one or moremagnetic disk drives), a user interface 924, one more disks 934, and atleast one network or other communication interface connection 936 forcommunicating with other computers over a network, including theInternet, as well as other devices, such as via a high speed networkingcable, or a wireless connection. There may optionally be a firewall 952between the computer and the Internet. At least the CPU 922, memory 938,user interface 924, disk 934 and network interface 936, communicate withone another via at least one communication bus 933.

CPU 922 may optionally include a vector processor, optimized formanipulating large vectors of data.

Memory 938 stores procedures and data, typically including some or allof: an operating system 940 for providing basic system services; one ormore application programs, such as a parser routine 950, and a compiler(not shown in FIG. 9), a file system 942, one or more databases 944 thatstore advertising inventory 946, campaign descriptions 948, and otherinformation, and optionally a floating point coprocessor where necessaryfor carrying out high level mathematical operations. The methods of thepresent invention may also draw upon functions contained in one or moredynamically linked libraries, not shown in FIG. 9, but stored either inmemory 938, or on disk 934.

The database and other routines shown in FIG. 9 as stored in memory 938may instead, optionally, be stored on disk 934 where the amount of datain the database is too great to be efficiently stored in memory 938. Thedatabase may also instead, or in part, be stored on one or more remotecomputers that communicate with computer system 900 through networkinterface 936.

Memory 938 is encoded with instructions for receiving input from one ormore advertisers and for calculating a similarity score for consumersagainst one another. Instructions further include programmedinstructions for performing one or more of parsing, calculating ametric, and various statistical analyses. In some embodiments, thesparse vector themselves are not calculated on the computer 900 but areperformed on a different computer and, e.g., transferred via networkinterface 936 to computer 900.

Various implementations of the technology herein can be contemplated,particularly as performed on computing apparatuses of varyingcomplexity, including, without limitation, workstations, PC's, laptops,notebooks, tablets, netbooks, and other mobile computing devices,including cell-phones, mobile phones, wearable devices, and personaldigital assistants. The computing devices can have suitably configuredprocessors, including, without limitation, graphics processors, vectorprocessors, and math coprocessors, for running software that carries outthe methods herein. In addition, certain computing functions aretypically distributed across more than one computer so that, forexample, one computer accepts input and instructions, and a second oradditional computers receive the instructions via a network connectionand carry out the processing at a remote location, and optionallycommunicate results or output back to the first computer.

Control of the computing apparatuses can be via a user interface 924,which may comprise a display, mouse 926, keyboard 930, and/or otheritems not shown in FIG. 9, such as a track-pad, track-ball,touch-screen, stylus, speech-recognition, gesture-recognitiontechnology, or other input such as based on a user's eye-movement, orany subcombination or combination of inputs thereof. Additionally,implementations are configured that permit a purchaser of advertisinginventory to access computer 900 remotely, over a network connection,and to view inventory via an interface having attributes comparable tointerface 924.

In one embodiment, the computing apparatus can be configured to restrictuser access, such as by scanning a QR-code, gesture recognition,biometric data input, or password input.

The manner of operation of the technology, when reduced to an embodimentas one or more software modules, functions, or subroutines, can be in abatch-mode—as on a stored database of inventory and consumer data,processed in batches, or by interaction with a user who inputs specificinstructions for a single advertising campaign.

The results of matching advertising inventory to criteria for anadvertising campaign, as created by the technology herein, can bedisplayed in tangible form, such as on one or more computer displays,such as a monitor, laptop display, or the screen of a tablet, notebook,netbook, or cellular phone. The results can further be printed to paperform, stored as electronic files in a format for saving on acomputer-readable medium or for transferring or sharing betweencomputers, or projected onto a screen of an auditorium such as during apresentation.

ToolKit: The technology herein can be implemented in a manner that givesa user (such as a purchaser of advertising inventory) access to, andcontrol over, basic functions that provide key elements of advertisingcampaign management. Certain default settings can be built in to acomputer-implementation, but the user can be given as much choice aspossible over the features that are used in assigning inventory, therebypermitting a user to remove certain features from consideration oradjust their weightings, as applicable.

The toolkit can be operated via scripting tools, as well as or insteadof a graphical user interface that offers touch-screen selection, and/ormenu pull-downs, as applicable to the sophistication of the user. Themanner of access to the underlying tools by a user is not in any way alimitation on the technology's novelty, inventiveness, or utility.

Accordingly, the methods herein may be implemented on or across one ormore computing apparatuses having processors configured to execute themethods, and encoded as executable instructions in computer readablemedia.

For example, the technology herein includes computer readable mediaencoded with instructions for executing a method for targeting deliveryof advertising content to a consumer across two or more display devices,the instructions including instructions for: receiving a pricepoint andone or more campaign descriptions from an advertiser; instructions fordefining a pool of consumers based on a graph of consumer properties,wherein the graph contains information about the two or more TV andmobile devices used by each consumer, demographic and online behavioraldata on each consumer and similarities between pairs of consumers; andinstructions for calculating the pool of consumers comprises consumersthat have at least a threshold similarity to a member of the targetaudience; instructions for receiving a list of inventory from one ormore content providers, wherein the list of inventory comprises one ormore slots for TV and online; instructions for identifying one or moreadvertising targets, wherein each of the one or more advertising targetscomprises a sequence of slots consistent with one or more of thecampaign descriptions, and an overall cost consistent with thepricepoint; instructions for allocating the advertising content of theone or more campaign descriptions to the one or more advertisingtargets; and instructions for communicating purchase requests for slotsof advertising inventory in TV content identified and online, andinstructions for causing a media conduit to deliver an item ofadvertising content to a consumer in the pool of consumers.

The technology herein may further comprise computer-readable mediaencoded with instructions for executing a method for optimizing anadvertising campaign across a plurality of devices accessible to aconsumer, the instructions including instructions for: determining thatthe consumer is a member of a target audience; identifying a first andsecond device accessible to the consumer, wherein the first and seconddevice comprise a TV and a mobile device; instructions for receivinginput to purchase slots for a first and second item of advertisingcontent on the first and second devices, consistent with an advertisingbudget and the target audience; instructions for bidding on slots forplacement of the first and second items of advertising content, whereinthe bidding relies on information about the likely success of a bidbased on at least the consumer's location, and the time of day; andinstructions for assessing whether the bids on the first and seconditems of content are successful, and instructions for communicating witha media conduit to deliver the an item of advertising content to one ofthe devices; and receiving feedback on the consumer's response to thefirst and second items of content; and instructions for analysing thefeedback in order to communicate further requests to purchase furtherslots for the first and second items of advertising content.

Correspondingly, the technology herein also includes a computingapparatus having at least one processor configured to executeinstructions for implementing a method for targeting delivery ofadvertising content to a consumer across two or more display devices,the instructions including instructions for: receiving a pricepoint andone or more campaign descriptions from an advertiser; instructions fordefining a pool of consumers based on a graph of consumer properties,wherein the graph contains information about the two or more TV andmobile devices used by each consumer, demographic and online behavioraldata on each consumer and similarities between pairs of consumers; andinstructions for calculating the pool of consumers comprises consumersthat have at least a threshold similarity to a member of the targetaudience; instructions for receiving a list of inventory from one ormore content providers, wherein the list of inventory comprises one ormore slots for TV and online; instructions for identifying one or moreadvertising targets, wherein each of the one or more advertising targetscomprises a sequence of slots consistent with one or more of thecampaign descriptions, and an overall cost consistent with thepricepoint; instructions for allocating the advertising content of theone or more campaign descriptions to the one or more advertisingtargets; and instructions for communicating purchase requests for slotsof advertising inventory in TV content identified and online, andinstructions for causing a media conduit to deliver an item ofadvertising content to a consumer in the pool of consumers.

Furthermore, the technology herein may further include a computingapparatus having at least one processor configured to executeinstructions for implementing a method for optimizing an advertisingcampaign across a plurality of devices accessible to a consumer, theinstructions including instructions for: determining that the consumeris a member of a target audience; identifying a first and second deviceaccessible to the consumer, wherein the first and second device comprisea TV and a mobile device; instructions for receiving input to purchaseslots for a first and second item of advertising content on the firstand second devices, consistent with an advertising budget and the targetaudience; instructions for bidding on slots for placement of the firstand second items of advertising content, wherein the bidding relies oninformation about the likely success of a bid based on at least theconsumer's location, and the time of day; and instructions for assessingwhether the bids on the first and second items of content aresuccessful, and instructions for communicating with a media conduit todeliver the an item of advertising content to one of the devices; andreceiving feedback on the consumer's response to the first and seconditems of content; and instructions for analysing the feedback in orderto communicate further requests to purchase further slots for the firstand second items of advertising content

Cloud Computing

The methods herein can be implemented to run in the “cloud.” Thus theprocesses that one or more computer processors execute to carry out thecomputer-based methods herein do not need to be carried out by a singlecomputing machine or apparatus. Processes and calculations can bedistributed amongst multiple processors in one or more datacenters thatare physically situated in different locations from one another. Data isexchanged with the various processors using network connections such asthe Internet. Preferably, security protocols such as encryption areutilized to minimize the possibility that consumer data can becompromised. Calculations that are performed across one or morelocations remote from an entity such as a DSP include calculation ofconsumer and device graphs, and updates to the same.

EXAMPLES Example 1: Refining a Cross-Screen Advertising Campaign

An instance has been developed employing apparatus and processes asdescribed elsewhere herein.

FIG. 6 illustrates an application of a method of targeting specificaudiences, and refining the audience based on feedback. The consumergraph is used in the planning stage; other methods described herein,such as bidding on Programmatic TV content, etc., are used in the buyingstage. This part in FIG. 6 allows to optimize the match of audience andinventory. Target audience is fixed. The system intakes data regardingdemands for advertising inventory. In this example, a first demand 101is from an advertiser that is requesting to find 1,000 audience memberswho are males between 25 and 35 that are “looking to purchase a BMW”.The system runs a machine learning process on the audience data to findappropriate inventory.

A technique, referred to as a “multi-armed bandit” is applied 103. Inpractice this means running the match calculations a number of timesacross different inventory to determine the probability of consumerintent to purchase. A probability determination is made for each set ofinventory.

For example, a Linear (analog) TV Auto Show Primetime inventory 104 isdetermined to have a high likelihood (Pi=45%) of reaching the desiredaudience. A digital auto racing inventory 105 is determine to have amoderate likelihood (Pi=35%) of reaching the desired audience. A VOD andmobile online audience 106 is determined to have a high likelihood(Pi=50%) of reaching the desired audience.

A feedback sequence 107 is provided wherein the actual performances offactors such as brand lift, sales lift, and numbers of website visitorsare reviewed and measured against the estimated certainty of reachingthe desired audience.

Finally, the delta (difference between measured and predicted outcomes)and are then input 108 into the machine learning process to improve itsaccuracy for future estimates.

Example 2: Look-Alike Modeling

A population of consumers is modeled as having transmutable andnon-transmutable characteristics. Both transmutable and non-transmutablecharacteristics are treated separately as macro categories. In otherwords, the relevant data representing either set of characteristics isdivided into two separate bundles of information. Each consumer isassociated with bundles of data regarding device behavior, categorizedas either a transmutable characteristic or a non-transmutablecharacteristic. Each bundle is further sub-bundled by known consumptionbased on those characteristics. For example, a woman known to have had achild is represented as such within the set of transmutablecharacteristics, and therefore as likely to have the need to purchasediapers. That transmutable characteristic is known to evolve with time,meaning that in, say, two years, the purchasing tendency indicator willadjust with the growing age of the woman's child.

The look-alike modeling can also make other assumptions by aggregatingknown characteristics within either or both transmutable andnon-transmutable categories, such as combining specific knowledge ofpurchasing history with consensus data on, for example, the person'sincome (or income bracket range). A purchasing behavior model can thenbe compared to a system generated archetype of the woman, showing likelybehavior based on known characteristics. The behavior model of thespecific user becomes more defined as more behavior data is collectedsuch as third party purchasing histories, and consent-based device usedata (such as IP address or device IDs from the manufacturer or username associations on specific web services).

With this information, advertisers can make reliable assumptions that aspecific user who is known to have characteristics X, Y and Z is alsohighly likely to engage with, for example, a specific luxury car brandadvertisement, and the like. Thus, in the example of a woman whorecently purchased diapers, it can also be deduced that the woman'shousehold income is greater than $100,000, and as information is builtup over time, the likely interest in types of purchases can be deduced.

The system can also anticipate changes in preference and adjusts to newdata received accordingly. For instance, within the category oftransmutable preferences, a change in profession, age, and maritalstatus will adjust to reflect the user's change in purchasingpreferences based on known and observable traits of similarly situatedindividuals. The system then provides inventory placement suggestions toadvertisers based on these data point adjustments. Targeting andadvertising planning is directed by a degree of data granularity that isin a continuous and synchronous state of change.

Example 3: Interface

In one exemplary implementation, the systems and methods herein areprovided via a fully self-serve user interface that allows advertisersto upload advertising content, select inventory, make bids, and monitorthe success of a campaign as it is implemented. An exemplary interfaceis shown in FIGS. 8A, 8B, 8C, and 8D. This interface allows advertisersto choose inventory according to a bid price. An interface for placingadverts in online/web content is shown in two panels, split over FIGS.8A and 8B. An interface for placing adverts within programmatic TVcontent (two panels, split over FIGS. 8C and 8D) shows a list of TVschedules in particular geographic regions and key data such as thenumber of estimated impressions. Other similar interfaces can beenvisaged to allow an advertiser to place content in apps, and VODenvironments.

All references cited herein are incorporated by reference in theirentireties.

The foregoing description is intended to illustrate various aspects ofthe instant technology. It is not intended that the examples presentedherein limit the scope of the appended claims. The invention now beingfully described, it will be apparent to one of ordinary skill in the artthat many changes and modifications can be made thereto withoutdeparting from the spirit or scope of the appended claims.

What is claimed:
 1. A method for targeting delivery of advertisingcontent to a consumer across two or more devices, the method beingperformed by at least one computer system containing at least oneprocessor and at least one memory storing instructions that whenexecuted by the at least one processor, cause the at least one computersystem to perform operations comprising: receiving, by the at least oneprocessor, a pricepoint and one or more campaign descriptions from anadvertiser, wherein each of the campaign descriptions comprises aschedule for delivery of an item of advertising content across two ormore devices accessed by a consumer, wherein the devices include one ormore TV's and one or more mobile devices, and a target audience, whereinthe target audience is defined by one or more demographic factors;defining, by the at least one processor, a pool of consumers based on agraph of consumer properties, the graph being of a set of nodesrepresenting consumers and edges connecting pairs of nodes, where twonodes that are connected by an edge are similar to one another accordingto at least a criterion, and wherein a weight of an edge defines astrength of similarity, the graph containing information about: the twoor more TV and mobile devices used by each consumer; demographic andonline behavioral data on each consumer, and similarities between pairsof consumers; wherein the information has been obtainedprobabilistically at least in part; and wherein the pool of consumerscomprises consumers having at least a threshold similarity to a memberof the target audience; receiving, by the at least one processor, a listof inventory from one or more content providers, wherein the list ofinventory comprises one or more slots for TV and online; identifying, bythe at least one processor, one or more advertising targets, whereineach of the one or more advertising targets comprises a sequence ofslots consistent with one or more of the campaign descriptions, and anoverall cost consistent with the pricepoint; allocating, by the at leastone processor, the advertising content of the one or more campaigndescriptions to the one or more advertising targets; instructing, by theat least one processor, purchase of two or more slots of advertisinginventory wherein one or more slots are delivered within TV contentidentified as likely to be viewed by the target audience based on TVviewing data for the pool of consumers, and one or more slots aredelivered online as a result of a real-time decision; the at least oneprocessor communicating instructions to a first media conduit to deliverthe item of advertising content to a consumer in the target audience ona first device; and the at least one processor additionallycommunicating instructions to a second media conduit to deliver the itemof advertising content to the consumer on a second device.
 2. The methodof claim 1, wherein the purchasing of a slot of online inventory is viareal-time bidding.
 3. The method of claim 1, wherein the purchasing of aslot in programmatic TV inventory is via a bidding method that utilizesTV viewing data for specific devices.
 4. The method of claim 1, furthercomprising calculating, by the at least one processor, a deduplicatedreach based on delivery of the item of advertising content to first andsecond devices, and adjusting, by the at least one processor, theadvertising targets prior to allocating the advertising content afurther time in order to improve the deduplicated reach.
 5. The methodof claim 1, further comprising calculating, by the at least oneprocessor, a frequency of delivery of advertising content to theconsumer, and suspending, by the at least one processor, furtherdelivery of the advertising content to the consumer if the frequency ofdelivery exceeds a threshold number.
 6. The method of claim 1, furthercomprising calculating, by the at least one processor, a cost-basedefficiency based on delivery of the item of advertising content to firstand second devices, and adjusting, by the at least one processor, theadvertising targets prior to allocating the advertising content afurther time in order to improve the cost-based efficiency.
 7. A methodof optimizing an advertising campaign across a plurality of devicesaccessible to a consumer, the method being performed by at least onecomputer system containing at least one processor and at least onememory storing instructions that when executed by the at least oneprocessor, cause the at least one computer system to perform operationscomprising: determining, by the at least one processor, that theconsumer is a member of a target audience using a graph of consumerproperties, the graph being of a set of nodes representing consumers andedges connecting pairs of nodes, where two nodes that are connected byan edge are similar to one another according to at least a criterion,and wherein a weight of an edge defines a strength of similarity, thegraph containing information about: the plurality of devices used byeach consumer: demographic and online behavioral data on each consumer;and similarities between pairs of consumers; wherein the information hasbeen obtained probabilistically at least in part; identifying, by the atleast one processor, a first and second device accessible to theconsumer, wherein the first and second device comprise a TV and a mobiledevice; receiving, by the at least one processor, instructions forpurchase of slots for a first and second item of advertising content onthe first and second devices, consistent with an advertising budget andthe target audience; instructing, by the at least one processor, biddingon slots for placement of the first and second items of advertisingcontent, wherein the bidding relies on information about the likelysuccess of a bid based on at least the consumer's location, and the timeof day; in the event of successful bids on the first and second items ofcontent, the at least one processor communicating instructions to afirst media conduit to cause the first media conduit to deliver thefirst item of advertising content to the first device; and the at leastone processor additionally communicating instructions to a second mediaconduit to cause the second media conduit to deliver the second item ofadvertising content to the second device; receiving, by the at least oneprocessor, feedback on the consumer's response to the first and seconditems of content; and the at least one processor using the feedback toinstruct purchase of further slots for the first and second items ofadvertising content.
 8. The method of claim 7, wherein the determiningthat the consumer is a member of a target audience comprises matching,by the at least one processor, behavioral and demographic data on theconsumer from a graph of data to parameters of the target audience. 9.The method of claim 7, wherein the bidding includes bidding on TVinventory selected from: programmatic TV, linear TV, and video-on-demandcontent.